Как стать автором
Обновить
0
@BananasRevealerread⁠-⁠only

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

Отправить сообщение

Kotlin-сервер без JVM — реальность?

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров5.3K

Не секрет, что Kotlin может использоваться для создания всех компонентов FullStack-приложения - от мобильных приложения для Android/iOS и веб-сайтов на Kotlin JS до бэкэнда (например, с использованием Ktor, http4k и micronaut). Но все же многих останавливает от использования Kotlin для создания API тот факт, что код запускается в хоть и оптимизированной, но все же Java виртуальной машине. Есть ли решение у этой проблемы? Да, и в этой статье мы обсудим способы компиляции приложения на Kotlin для создания API в нативный код и подводные камни, которые нас ожидают на этом пути.

Читать далее
Всего голосов 13: ↑12 и ↓1+13
Комментарии4

Введение в Postman

Время на прочтение12 мин
Количество просмотров619K

image


“Разработка API сложна, Postman делает её лёгкой” © Postdot Technologies, Inc

Когда видишь описание инструментов Postman — захватывает дух, просыпается чувство всевластия над своим будущим детищем. Кажется, что и взрощенные в прошлом "монстры" наконец-то падут перед тобой!


В этой статье мы расскажем о Postman и попробуем написать свой первый скрипт.

Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии43

Основы HTTPS, TLS, SSL. Создание собственных X.509 сертификатов. Пример настройки TLSv1.2 в Spring Boot

Время на прочтение10 мин
Количество просмотров93K

Привет, Хабр! В современном мире абсолютное большинство сайтов используют HTTPS (Google даже снижает рейтинг сайтов работающих по HTTP в поисковой выдаче), а подключение к различным системам происходит по протоколу TLS/SSL. Поэтому любой разработчик рано или поздно сталкивается с этими технологиями на практике. Данная статья призвана помочь разобраться, если вы совершенно не в курсе что это такое и как оно устроено. Мы разберем как работает соединение по протоколу TLS, как выпустить собственные сертификаты и настроем TLS в Spring Boot приложении. Поехали!

Читать далее
Всего голосов 16: ↑12 и ↓4+9
Комментарии12

Java Challengers #1: Перегрузка методов в JVM

Время на прочтение8 мин
Количество просмотров37K

Java Challengers #1: Перегрузка методов в JVM


Всем доброго дня.


У нас уже запустился очередной поток курса "Разработчик Java", но у нас ещё осталось немного материалов, которыми бы хотели с вами поделиться.


Добро пожаловать в серию статей Java Challengers! Этот серия статей посвящена особенностям программирования на Java. Их освоение — это ваш путь к становлению высококвалифицированным программистом на Java.


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


Готовы ли вы приступить к освоению основных концепций программирования на Java? Тогда давайте начнем с нашей первой задачки!


widening-boxing-varargs

Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии7

Типы HTTP-запросов и философия REST

Время на прочтение4 мин
Количество просмотров976K
Этот пост — ответ на вопрос, заданный в комментарии к одной из моих статей.

В статье я хочу рассказать, что же из себя представляют HTTP-методы GET/POST/PUT/DELETE и другие, для чего они были придуманы и как их использовать в соответствии с REST.
Читать дальше →
Всего голосов 84: ↑78 и ↓6+72
Комментарии111

Стратегии тестирования микросервисов

Время на прочтение11 мин
Количество просмотров36K

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

Читать далее
Всего голосов 13: ↑12 и ↓1+13
Комментарии4

REST-assured: полезные советы

Время на прочтение4 мин
Количество просмотров107K
В данной статье я собрал полезные советы по использованию REST-assured, одной из самых распространенных Java-библиотек для автоматизации тестирования REST-API.

Все примеры жизненные, они собраны из моей практики проведения code-review в более чем 50 проектах с автотестами.
Читать дальше →
Всего голосов 15: ↑13 и ↓2+11
Комментарии14

Знай сложности алгоритмов

Время на прочтение2 мин
Количество просмотров1M
Эта статья рассказывает о времени выполнения и о расходе памяти большинства алгоритмов используемых в информатике. В прошлом, когда я готовился к прохождению собеседования я потратил много времени исследуя интернет для поиска информации о лучшем, среднем и худшем случае работы алгоритмов поиска и сортировки, чтобы заданный вопрос на собеседовании не поставил меня в тупик. За последние несколько лет я проходил интервью в нескольких стартапах из Силиконовой долины, а также в некоторых крупных компаниях таких как Yahoo, eBay, LinkedIn и Google и каждый раз, когда я готовился к интервью, я подумал: «Почему никто не создал хорошую шпаргалку по асимптотической сложности алгоритмов? ». Чтобы сохранить ваше время я создал такую шпаргалку. Наслаждайтесь!
Читать дальше →
Всего голосов 312: ↑296 и ↓16+280
Комментарии99

Разрешение конфликтов в транзитивных зависимостях — Хороший, Плохой, Злой

Время на прочтение6 мин
Количество просмотров46K

Вместо предисловия


В ближайшую субботу мы с EvgenyBorisov будем выступать в Питере на JUG.ru. Будет много веселого трэша и интересной инфы (иногда не разберешь, где проходит граница), и одно из моих выступлений будет посвящено WTF-нутости модульной разработки программ. Я расскажу несколько ужастиков, один из которых будет о том, как все пытаются быстро, гибко и корректно описать зависимости в проекте, и что из этого обычно получается. Интересно? Тогда добро пожаловать в ад!


Скорее, конечно, «Хороший, Удобный и WTF-ный».
Погрузиться в конфликт...
Всего голосов 52: ↑46 и ↓6+40
Комментарии83

Основы Natural Language Processing для текста

Время на прочтение12 мин
Количество просмотров201K
Обработка естественного языка сейчас не используются разве что в совсем консервативных отраслях. В большинстве технологических решений распознавание и обработка «человеческих» языков давно внедрена: именно поэтому обычный IVR с жестко заданными опциями ответов постепенно уходит в прошлое, чатботы начинают все адекватнее общаться без участия живого оператора, фильтры в почте работают на ура и т.д. Как же происходит распознавание записанной речи, то есть текста? А вернее будет спросить, что лежит в основе соврменных техник распознавания и обработки? На это хорошо отвечает наш сегодняшний адаптированный перевод – под катом вас ждет лонгрид, который закроет пробелы по основам NLP. Приятного чтения!


Всего голосов 33: ↑31 и ↓2+29
Комментарии9

5 инструментов для анализа первопричин (RCA), которые помогут вам улучшить тестирование и QA

Время на прочтение6 мин
Количество просмотров24K

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

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

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии0

5+1 случай, когда спецификация REST API играет огромную роль

Время на прочтение13 мин
Количество просмотров35K

В этой статье речь пойдёт о написании и поддержке полезной и актуальной спецификации для REST API-проекта, которая позволит сэкономить много лишнего кода, а также серьёзно улучшить целостность, надежность и прозрачность прокта в целом.


Что такое RESTful API?



Это миф.


Серьёзно, если вы думаете, что в вашем проекте RESTful API, вы почти наверняка ошибаетесь. Идея RESTful — в построении API, который во всём соответствовал бы архитектурным правилам и ограничениям, описанным стилем REST, однако в реальных условиях это оказывается почти невозможно.

Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии32

OAuth 2.0 простым и понятным языком

Время на прочтение7 мин
Количество просмотров832K
Логотип OAuth 2.0

На хабре уже писали про OAuth 1.0, но понятного объяснения того, что такое OAuth 2.0 не было. Ниже я расскажу, в чем отличия и преимущества OAuth 2.0 и, как его лучше использовать на сайтах, в мобильных и desktop-приложениях.

Что такое OAuth 2.0


OAuth 2.0 — протокол авторизации, позволяющий выдать одному сервису (приложению) права на доступ к ресурсам пользователя на другом сервисе. Протокол избавляет от необходимости доверять приложению логин и пароль, а также позволяет выдавать ограниченный набор прав, а не все сразу.

Читать дальше →
Всего голосов 168: ↑153 и ↓15+138
Комментарии44

Повторная обработка событий, полученных из Kafka

Время на прочтение7 мин
Количество просмотров27K


Привет, Хабр.


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


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

Читать дальше →
Всего голосов 18: ↑17 и ↓1+19
Комментарии5

Lombok возвращает величие Java

Время на прочтение11 мин
Количество просмотров136K


Мы в Grubhub почти во всём бэкенде используем Java. Это проверенный язык, который за последние 20 лет доказал свою скорость и надёжность. Но с годами возраст «старичка» всё-таки начал сказываться.

Java — один из самых популярных языков JVM, но не единственный. В последние годы конкуренцию ему составляют Scala, Clojure и Kotlin, которые обеспечивают новую функциональность и оптимизированные функции языка. Короче говоря, они позволяют делать больше с более лаконичным кодом.
Читать дальше →
Всего голосов 37: ↑31 и ↓6+25
Комментарии29

Нужные HTTP-заголовки

Время на прочтение5 мин
Количество просмотров45K
Наши клиенты в Fastly любят манипулировать заголовками HTTP. Подбор правильной комбинации заголовков — одна из лучших вещей, какую вы можете сделать для безопасности своего сайта и значительного вклада в его производительность.

Большинство разработчиков знают о важных и нужных HTTP-заголовках. Самые известные — Content-Type и Content-Length, это почти универсальные хедеры. Но в последнее время для повышения безопасности начали использоваться заголовки вроде Content-Security-Policy и Strict-Transport-Security, а для повышения производительности — Link rel=preload. Несмотря на широкую поддержку в браузерах, лишь немногие их используют.

В предыдущей статье мы рассмотрели ненужные заголовки. Сейчас разберёмся, какие заголовки действительно следует настроить для своего сайта.
Читать дальше →
Всего голосов 29: ↑29 и ↓0+29
Комментарии5

Ultimate Guide по карьере в AI: как выбрать специальность, прокачаться и найти классную работу

Время на прочтение17 мин
Количество просмотров31K


3 августа в наших соцсетях выступал Сергей Ширкин, специалист по ML и искусственному интеллекту.

Сергей занимался автоматизацией финансовых технологий и базами данных в «Сбербанке» и «Росбанке», построением финансовых моделей на основе машинного обучения и аналитической деятельностью в компании Equifax. Прогнозирует телесмотрение с применением методов искусственного интеллекта в Dentsu Aegis Network Russia. Приглашённый преподаватель ВШЭ (магистерская программа «Коммуникации, основанные на данных»).

Также Сергей исследует квантовые вычисления в приложении к ИИ и машинному обучению. Он стоит у истоков факультетов Искусственного интеллекта, Аналитики Big Data и Data Engineering онлайн-университета Geek University, на которых работает деканом и преподавателем.

Делимся с вами расшифровкой эфира и записью.

***

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

Сегодняшние темы могут быть интересны не только новичкам, но и опытным программистам – например, как перейти из сферы программирования в сферу машинного обучения, искусственного интеллекта, нейронных сетей. В зависимости от того, в какой технологии человек занимается и какие языки изучает, практичный переход в эту сферу может проходить по-разному. Специальностей в ИИ очень много.
Всего голосов 22: ↑17 и ↓5+22
Комментарии27

Насколько круто иметь свой сервер в комнате

Время на прочтение6 мин
Количество просмотров120K

Некоторые олды часто вспоминают эпоху до смартфонов, когда в студенческие времена или в школе у них был любимый настольный компьютер. Он стоял прямо в комнате, рядом с кроватью, и работал как личный ассистент в режиме 24/7: играл фоновую музыку (со специальным плейлистом, когда в гости приходили девушки), показывал фильмы, будил уведомлением из аськи или ирки, скачивал сайты ночью по диалапу и т. д.

Но кажется, что эта эпоха возвращается. Только на новом уровне. Сейчас опять стало очень круто иметь в комнате свой сервер, только он выглядит иначе и выполняет другие функции.
Читать дальше →
Всего голосов 117: ↑116 и ↓1+146
Комментарии317

Китай и другие страны делают ставку на RISC-V. Открытая архитектура постепенно становится все более востребованной

Время на прочтение4 мин
Количество просмотров17K
image
Месяц назад мы публиковали на Хабре статью о том, что китайцам удалось добавить поддержку архитектуры RISC-V в Android. А еще раньше рассказывали о том, что в Поднебесной уже создан процессор, а на его основе — первый ноутбук, который работает на процессоре с архитектурой RISC-V.

Интерес Китая к этой архитектуре объясняется просто — RISC-V позволяет компаниям из Поднебесной обходить санкции США, поскольку архитектура открытая и бесплатная. Сейчас Китай делает дальнейшие шаги в отношении развития технологии — ее поддерживают уже не только коммерческие компании, но и правительство страны. О перспективах этой консолидации, если так можно выразиться — под катом.
Читать дальше →
Всего голосов 57: ↑55 и ↓2+71
Комментарии11

Это не тот ЦОД, к которому вы привыкли. Чем аттестованный сегмент отличается от классического?

Время на прочтение9 мин
Количество просмотров3.3K

Сегодня у компаний есть несколько вариантов размещения своих приложений в зависимости от задач и требований регуляторов. Аттестованный сегмент ЦОД занимает выгодную позицию с точки зрения возможности масштабирования и гибкости оплаты по сравнению с on-premise инфраструктурой. При этом сохраняет почти такой же уровень контроля за безопасностью.

Но чем отличается аттестованный сегмент от обычного? И как организована работа с серверами А-ЦОД в Selectel? Разбираемся вместе с руководителем отдела разработки и сопровождения сервисов ИБ Антоном Ведерниковым. Подробности под катом.
Читать дальше →
Всего голосов 37: ↑35 и ↓2+45
Комментарии12
1

Информация

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