В этом посте я хочу поделиться обзором 15 докладов с конференции Heisenbug, рассказать, что интересного было на стендах у компаний, а также поделиться видеоматериалом из доклада Артема Ерошенко о создании actions плагинов для IntelliJ IDEA, которые помогут быстро изменять код тестового проекта.
Рубрика «java» - 71
HeisenBug глазами сотрудника СберТеха
2018-12-21 в 9:28, admin, рубрики: heisenbug2018moscow, java, Блог компании Сбербанк, конференции, Тестирование IT-системКак учиться Java-разработке? Опыт студента GeekUniversity Никиты Чернецова
2018-12-20 в 9:16, admin, рубрики: geekbrains, geekuniversity, java, mail.ru group, Блог компании Mail.Ru Group
Высшее образование я получал в МГТУ, изучал ядерные реакторы и энергетические установки. Однако несмотря на позитивное впечатление от учёбы и в целом неплохие перспективы, после вуза я решил стать разработчиком. И получилось! Вот уже три года я работаю в Java-разработчиком, ни на секунду не прерывая своё обучение профессии. Я расскажу о том, какие способы обучения оказались для меня самыми эффективными. Не факт, что они зайдут всем и каждому. Надеюсь, кто-то почерпнёт для себя что-нибудь полезное.
Фильтр Блума в Java с помощью Guava
2018-12-19 в 15:05, admin, рубрики: bloom filter, java, Алгоритмы, Блог компании Отус, Программирование, фильтр блумаВсем доброго дня.
Мы запустили новый курс — «Алгоритмы для разработчиков», предназначенных для тех подтянуть знания по разнообразным структурам и алгоритмам обработки данных, решению алгебраических задач и задач динамического программирования для различных языков. Так что сегодня мы делимся небольшой заметкой о работе фильтра Блума в Java.
Введение
В этой статье мы рассмотрим структуру фильтра Блума из библиотеки Guava. Фильтр Юлума — это вероятностная структура данных с эффективным использованием памяти, которую мы можем использовать для ответа на вопрос “Содержится ли данный элемент в множестве?”.
В фильтре Блума не бывает ложноотрицательных, поэтому, если он возвращает false, можно быть уверенным на 100%, что этого элемента в множестве нет.
Однако, фильтр Блума может возвращать ложноположительные, поэтому по возвращении true высока вероятность, что элемент действительно есть в множестве, но вероятность не 100%.
Чтобы узнать подробнее о работе фильтра Блума, ознакомьтесь с этим руководством.
Fault Injection: твоя система ненадежна, если ее не пробовали сломать
2018-12-18 в 14:00, admin, рубрики: Apache, fault injection, java, Блог компании Сбербанк, тестирование, Тестирование IT-системПривет! Меня зовут Павел Липский. Я инженер, работаю в компании Сбербанк-Технологии. Моя специализация — тестирование отказоустойчивости и производительности бэкендов крупных распределенных систем. Попросту говоря, я ломаю чужие программы. В этом посте я расскажу о fault injection — методе тестирования, который позволяет находить проблемы в системе путем создания искусственных сбоев. Начну с того, как я пришел к этому методу, потом поговорим о самом методе и о том, как мы его используем.
Ускоряем создание ConcurrentReferenceHashMap
2018-12-18 в 11:10, admin, рубрики: java, performance optimizationПриветствую, в этой заметке я рассажу, как можно с незначительными усилиями ускорить создание org.springframework.util.ConcurrentReferenceHashMap
.
Интересуетесь прокачиванием производительности? Добро пожаловать!
Десять вещей, которые можно делать с GraalVM
2018-12-17 в 15:06, admin, рубрики: graalvm, java, JIT-компилятор, jvm, LLVM, polyglot, Блог компании Haulmont, изучение языков, Программирование, языки программирования
От переводчика: GraalVM — новая, интересная технология, но на Хабре по ней не так много статей, которые бы могли показать примеры возможностей Graal. Статья ниже — это не просто перечисление того, что GraalVM умеет, но ещё и небольшой мастер-класс, аналогичный тому, который Chris Seaton и Олег Шелаев проводили на Oracle CodeOne 2018. Вслед за автором, призываю — пробуйте делать примеры из статьи, это действительно интересно.
В GraalVM много всего разного, и, если вы слышали это название раньше, или даже видели доклады, то все равно есть много вещей, о которых вы наверняка ещё не знаете, но которые GraalVM может делать. В этой статье мы рассмотрим разнообразные возможности, которые предоставляет GraalVM и покажем, что с их помощью можно сделать.
- Быстрое выполнение Java
- Уменьшение времени старта и потребления памяти для Java
- Комбинирование JavaScript, Java, Ruby и R
- Исполнение программ, написанных на платформо-зависимых языках
- Общие инструменты для всех языков программирования
- Дополнение JVM приложений
- Дополнение платформо-зависимых приложений
- Код Java как платформо-зависимая библиотека
- Поддержка нескольких языков программирования в базе данных
- Создание языков программирования для GraalVM
Компилируем Kotlin: JetBrains VS ANTLR VS JavaCC
2018-12-15 в 8:23, admin, рубрики: antlr, java, javacc, jetbrains, kotlin, parser, Компиляторы
Насколько быстро парсится Kotlin и какое это имеет значение? JavaCC или ANTLR? Годятся ли исходники от JetBrains?
Сравниваем, фантазируем и удивляемся.
Читать полностью »
Распознаём тексты на Android Things с ABBYY RTR SDK и django
2018-12-13 в 15:43, admin, рубрики: ABBYY, android, Android Things, AWS, django, java, ocr, python, Raspberry Pi, recognition, SDK, text, Блог компании ABBYY, Интернет вещей, Разработка под android, распознавание текстаПривет! Меня зовут Азат Калмыков, я студент второго курса ОП “Прикладная математика и информатика” Факультета компьютерных наук НИУ ВШЭ и стажёр в отделе мобильной разработки компании ABBYY. В этом материале я расскажу про свой небольшой проект, выполненный в рамках летней стажировки.
Представьте себе небольшой конвейер. По нему едут товары или какие-то детали, на которых важно распознавать текст (возможно, это некий уникальный идентификатор, а может, и что-то более интересное). Хорошим примером будут посылки. Работу конвейера дистанционно контролирует оператор, который отслеживает неполадки и в случае чего решает проблемы. Что может ему в этом помочь? Девайс на платформе Android Things может быть неплохим решением: он мобильный, легко настраивается и может работать через Wi-Fi. Мы решили попробовать использовать технологии ABBYY и узнать, насколько они подходят для таких ситуаций — распознавания текста в потоке на “нестандартных устройствах” из категории Internet of Things. Мы сознательно будем упрощать многие вещи, так как просто строим концепт. Если стало интересно, добро пожаловать под кат. Читать полностью »
Из авиаконструктора в программисты за один год, или как стать джедаем
2018-12-13 в 12:30, admin, рубрики: java, junior developer, Блог компании ICL Services, Карьера в IT-индустрии, курсы повышения квалификации, Программирование, разработка, саморазвитие, Учебный процесс в ITЙода: Мастер Квай-Гон, есть что еще сказать тебе?
Квай-Гон Джин: С вашего позволения, магистр. Я обнаружил точку сосредоточия Великой Силы.
Йода: Сосредоточия, сказал ты?
Мэйс Винду: Внутри живого существа?
Квай-Гон Джин: В мальчике. Его клетки содержат высочайший уровень мидихлориан из всех, что я видел. Вероятно, он был зачат мидихлорианами.
Мэйс Винду: Ты намекаешь на пророчество об Избранном, который привнесет баланс в Силу. Ты веришь, что это тот мальчик?
Звёздные войны. Эпизод I. Скрытая угроза.
Дружище, если ты читаешь это, то, скорее всего, ты — инженер. И, возможно, тебя уже все достало. А может, и нет. Впрочем, хочу поделиться с тобой опытом и мыслями о том, как мне удалось воплотить свою внезапно появившуюся мечту в реальность.
Темная сторона Силы скрывает все. Предвидеть невозможно наше будущее...
Защитил я свой красный диплом на тему беспилотной авиации и решил внедрить свой беспилотник, который я же сам и «надипломил». К тому времени я уже полтора года работал инженером-конструктором в отделе аэродинамики ОКБ (опытно-конструкторского бюро). Эх, знал бы я заранее, как быстро меня «приземлят» вместе со всеми моими амбициями и хотелками… В общем, осознал я суровую реальность и продолжил тихо работать в тряпочку.
Романтика работы рядового инженера обычно заключается в расчетах, отчетах, перерасчетах, в вечном переделывании, вплоть до потери связи с реальностью. У нас даже у начальника была забавная печать «Все *ня. Переделать!» И все бы ничего, но меня стал дико угнетать тот факт, что вот ты колдуешь-колдуешь годами, а результата-то нема! Нет четкого группового мозгового взаимодействия — половина работы, которую мы делаем, оказывается ненужной. Отсюда и вечные переработки, и выходы в выходные. Ну и как-то нет той «советской», общей идеи и желания руководства обогнать «клятые штаты». А ведь главный мотиватор в опытном проектировании — общая идея.
Читать полностью »
Исходный код OpenJDK содержит слишком много бранных слов
2018-12-13 в 11:37, admin, рубрики: java, sjw, Социальные сети и сообществаИменно с таким заголовком был создан тикет в багтрекере исходников Java:
https://bugs.openjdk.java.net/browse/JDK-8215217
Автор считает, что наличие разнообразной бранной лексики в OpenJDK/JDK исходниках мешает профессиональному сообществу, если не в целом, то как минимум некоторым индивидуумам. Всего автор насчитал 12 экземпляров подобного рода «багов».
Цитата:
There are many instances of swear words inside OpenJDK jdk/jdk source, scattered all over the place.
As OpenJDK is used in a professional context, it seems inappropriate to leave these 12 instances in there, so here's a changeset to remove them.
Автор приложил changeset с заменой нецензурной брани на цензурную. Список привожу целиком:
Читать полностью »