Обновить
-3

Java-разработчик

3
Подписчики
Отправить сообщение

Тесты, деньги и техдолг (сказ из жизни одного Java-проекта)

Время на прочтение19 мин
Охват и читатели8.9K


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

Сказ мой о разработке на Java, при этом всё нижеизложенное справедливо и для других языков программирования. От смены языков люди и проблемы в тестировании не меняются.
Отказ от ответственности (aka disclaimer): все персонажи являются вымышленными, и любое совпадение с реально живущими или когда-либо жившими людьми случайно.
Читать дальше →

Как работал компьютеризированный поиск за сорок лет до Google

Время на прочтение9 мин
Охват и читатели5.3K
Чарли Борн был специалистом по компьютеризированному поиску ещё за сорок лет до появления Google. Музей компьютерной истории недавно завершил каталогизацию его уникальной коллекции материалов, документирующих историю систем онлайн-поиска и информации, начиная с 1950-х годов.

Многие считают, что системы поиска и просмотра информации онлайн начали развиваться вместе с вебом в 1990-х, мгновенно перенеся нас от перебирания вручную пыльных карточных каталогов к выдаваемым за миллисекунду ответам современных поисковых движков. Те, кто давно знаком с компьютерами, могут припомнить пару более ранних компьютеризированных сервисов, например LexisNexis для журналистов и юристов или дорогостоящий Dialog.


LexisNexis

Выпускники семестрового курса «Разработка приложений на iOS», Технопарк Mail.ru

Время на прочтение6 мин
Охват и читатели3.8K
Свои дипломные проекты в этом сезоне защитила новая группа выпускников семестрового курса «Разработка на iOS» Технопарка (МГТУ им. Баумана). Это был экспериментальный семестр, все занятия проходили онлайн. Преподаватели выбрали четыре самых интересных решения, о которых мы хотим вам рассказать:

  • Приложение Personal Teacher для репетиторов.
  • Приложение LocalFootball для футбольных турниров.
  • Приложение PhoRent для аренды оборудования.
  • Приложение TastyThings для кулинарных рецептов.
Читать дальше →

Apache Kafka и тестирование с Kafka Server

Время на прочтение8 мин
Охват и читатели22K

Введение


Существуют различные способы для написания тестов с использованием Apache Kafka. К примеру, можно использовать TestContainers и EmbeddedKafka. Об этом можно почитать, к примеру, вот здесь: Подводные камни тестирования Kafka Streams. Но существует и вариант для написания тестов с использованием KafkaServer.

Читать дальше →

Книга «Игровой движок. Программирование и внутреннее устройство. Третье издание»

Время на прочтение17 мин
Охват и читатели25K
image Привет, Хаброжители! Книга Джейсона Грегори не случайно является бестселлером.Двадцать лет работы автора над первоклассными играми в Midway, Electronic Arts и Naughty Dog позволяют поделиться знаниями о теории и практике разработки ПО для игрового движка.

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

4-й конкурс «Тест Тьюринга» стартует в ноябре

Время на прочтение3 мин
Охват и читатели2.1K


Всем привет! Компании «Нейросети Ашманова» и «Наносемантика» приглашают всех желающих принять участие в 4-м всероссийском онлайн Тесте Тьюринга 2020, который мы организуем.
Разработчики смогут посоревноваться – у кого чат-бот умнее, остальные фанаты ИИ и технологий – посмотреть, насколько разумны сейчас боты.
Под катом – история конкурса, правила, ссылка на регистрацию и актуальное расписание.
Читать дальше →

Модульное тестирование архитектуры Spring Boot проекта с помощью ArchUnit

Время на прочтение5 мин
Охват и читатели9.7K

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

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

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

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

Читать далее

Декларативный подход в Angular

Время на прочтение10 мин
Охват и читатели12K

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

Если говорить кратко, в compliant-механизме для обеспечения его технических характеристик используют деформацию. В то время как в традиционной технике (rigid body) гибкость зачастую является негативным качеством материала, сompliant-механизмы используют ее для передачи силы и движения в нужном направлении, вместо соединений из нескольких подвижных деталей.

Узнать, к чему это я

Финансовое latency critical приложение на Java и Akka

Время на прочтение19 мин
Охват и читатели8.5K

Всем привет! В своей статье я поделюсь опытом разработки одного из финансовых приложений на Java в ТехЦентре Дойче Банка, расскажу про стек технологий, который мы используем, и каких результатов достигаем

Читать далее

Единороги на страже вашей безопасности: исследуем код Bouncy Castle

Время на прочтение7 мин
Охват и читатели5.3K
image1.png

Хотите увидеть новую порцию ошибок, найденных статическим анализатором PVS-Studio для Java? Тогда присоединяйтесь к прочтению статьи! В этот раз объектом проверки стал проект Bouncy Castle. Самые интересные фрагменты кода, как обычно, ждут вас ниже.
Читать дальше →

Как совместить парадигму Объектно-ориентированного программирования и Python в голове новичка?

Время на прочтение2 мин
Охват и читатели10K

Данная работа пригодится новичкам для осмысления Python и парадигмы объектно-ориентированного программирования, что называется в бою.

Читать далее

YC Startup Library на русском: Как создавать и тестировать идеи для стартапов (Майкл Сайбл)

Время на прочтение4 мин
Охват и читатели4.3K
9 ноября 2020 стартовала Школа стартапов для будущих основателей (Startup School for Future Founders от Y Combinator) и мы будем публиковать полезные переводы для тех, кто планирует стать основателем стартапа международного уровня. Следите за новостями в телеграм-канале YC library на русском.

image

Майкл Сайбл — сооснователь (в 25 лет) стартапов Justin.tv/Twitch (капитализация $15 млрд) и Socialcam, член правления Reddit. На данный момент исполнительный директор (CEO) Y Combinator.

Многие заблуждаются, считая, что для создания компании их идея обязательно должна быть «великой». И для начала я хочу разбить это заблуждение. Я был одним из основателей компании Justin.tv, которая позднее была переименована в Twitch и продана Amazon почти за миллиард долларов. Наша изначальная идея заключалась в создании онлайн реалити-шоу. Трудно найти связь между этой идеей и созданием сайта для стриминга видео, где люди наблюдают за геймерами и общаются в чате со своими друзьями, а ведь именно таким и стал сервис. Итак, не попадайтесь в эту ловушку – не думайте, что ваша идея обязана быть «великой» (что бы это ни значило).

Отталкивайтесь от проблемы


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

  • Есть ли у меня личная связь с этой проблемой?
  • Сталкиваюсь ли я сам с этой проблемой?
  • Сталкиваются ли с ней мои друзья?
  • Сталкиваются ли с ней члены моей семьи?
  • Существует ли эта проблема в контексте работы?
  • Существует ли эта проблема в моем окружении и обществе?

Формулирование личных связей с проблемой может помочь по двум причинам:

Советы по оптимизации кода на Java: как не наступать на грабли

Время на прочтение10 мин
Охват и читатели37K
Добрый вечер, коллеги.

Перевод статьи, который мы вам предложим сегодня, призван помочь ответить на вопрос: а назрела ли необходимость целой книги по оптимизации кода на Java? Надеемся, что материал не только покажется вам интересным, но и пригодится на практике. Пожалуйста, не забудьте проголосовать.
Читать дальше →

Рынок труда в Java-разработке — что мы знаем о нём, что он знает о нас

Время на прочтение5 мин
Охват и читатели44K
Прошлые статьи с цифрами нашли положительный отклик среди читателей, поэтому — на этот раз нечто совершенно иное — ещё один статистический сборник: рынок труда в Java, цифры из вакансий, резюме и заработные платы. Сам наш hh.ru в большей части написан на ней — уже ~15 лет мы следим за всей экосистемой Java и за динамикой джавистов на рынке.

Под катом — сравнение Java с совокупным рынком, реальные/предлагаемые/ожидаемые зарплаты, конкуренция и общие тренды. 21 график, время чтения — примерно 7 минут.


Читать дальше →

Удобное логирование в SpringBoot + Log4j2 + Maven

Время на прочтение4 мин
Охват и читатели43K

Здравствуйте, уважаемые Хабровчане.


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

Читать дальше →

Программирование для начинающих. Моё знакомство с Processing

Время на прочтение12 мин
Охват и читатели30K
Доброго времени суток, уважаемые.

Цифровые электронные самоделки часто взаимодействуют с компьютером. Передают данные, либо управляются с него. В свете этого всегда был интерес к программированию.
Мой прошлый опыт в этой области связан с интерпретатором бейсика ZX Spectrum, Qbasic’ом в рамках хобби юности и Си-86 в рамках студенчества. Были попытки освоить ECMAScript в рамках интереса к языку VRML. Встал вопрос, что выбрать сейчас?

Прошу под кат.
Читать дальше →

Краткий курс машинного обучения или как создать нейронную сеть для решения скоринг задачи

Время на прочтение28 мин
Охват и читатели237K
image

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

Если тебе интересно машинное обучение, то приглашаю в «Мишин Лернинг» — мой субъективный телеграм-канал об искусстве глубокого обучения, нейронных сетях и новостях из мира искусственного интеллекта.

Вопросы, которые разобраны в статье:

• Как собрать и подготовить данные для построения модели?
• Что такое нейронная сеть и как она устроена?
• Как написать свою нейронную сеть с нуля?
• Как правильно обучить нейронную сеть на имеющихся данных?
• Как интерпретировать модель и ее результаты?
• Как корректно оценить качество модели?
Поехали!

Работа с COM-портом Arduino из Java-приложения

Время на прочтение5 мин
Охват и читатели33K
Сап, хабр. Возможно, людям, начинающим изучать arduino, будет интересно, как легко и быстро организовать передачу информации между микроконтроллером и Java приложением. Данная связка открывает кучу интересных возможностей по сбору и обработке данных с датчиков, управлению различными свистелками-перделками, а также созданию своих первых IoT проектов.

Недавно на просторах интернета наткнулся на весьма простую библиотеку Java-Arduino Communication Library. Не найдя публикаций на эту тему здесь, решил поделиться с вами опытом использования. Для работы нам понадобятся установленные Arduino IDE, IntelliJ IDEA, Java SE Development Kit и, собственно, сам микроконтроллер (я тестировал на китайской Arduino Nano и Strela на базе Leonardo от Амперки, на обоих все все работало отлично).
Читать дальше →

1000+ часов видео по Java на русском

Время на прочтение7 мин
Охват и читатели1.3M
Добрый день.
Меня зовут Головач Иван, я руковожу небольшой образовательной компанией и преподаю сам:
  1. Java Core
  2. Junior Java Developer: Servlet API, JDBC, Maven, JUnit, Mockito, Log4J, основы Spring/SpringMVC, основы JPA/Hibernate, шаблоны/архитектуры MVC/IoC/DAO.
  3. Multicore programming in Java.


Также я веду курс «Scala for Java Developers» на платформе для онлайн-образования udemy.com (аналог Coursera/EdX).

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

(GolovachCourses.com)


Здесь собраны несколько вариантов записи моего курса Java Core.
Модуль #1 (Procedural Java):
Набор июль 2013: #1, #2, #3, #4
Набор апрель 2013: #1, #2, #3, #4
Набор февраль 2013: #1, #2, #3, #4
Набор январь 2013: #1, #2, #3, #4
Набор октябрь 2012: #1, #2, #3, #4.
Читать дальше →

Информация

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