Pull to refresh
4
0

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

Send message

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

Reading time19 min
Views8.1K


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

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

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

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

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


LexisNexis
Total votes 25: ↑25 and ↓0+25
Comments5

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

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

  • Приложение Personal Teacher для репетиторов.
  • Приложение LocalFootball для футбольных турниров.
  • Приложение PhoRent для аренды оборудования.
  • Приложение TastyThings для кулинарных рецептов.
Читать дальше →
Total votes 14: ↑13 and ↓1+26
Comments2

Лучшие выпускные работы весеннего семестра Технопроектов

Reading time6 min
Views2.9K

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

Предыдущие публикации: 1, 2, 3, 4, 5.

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

Читать дальше →
Total votes 23: ↑23 and ↓0+23
Comments0

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

Reading time8 min
Views18K

Введение


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

Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments3

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

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

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

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

Reading time3 min
Views1.9K


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

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

Reading time5 min
Views5.9K

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

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

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

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

Читать далее
Total votes 11: ↑11 and ↓0+11
Comments3

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

Reading time10 min
Views11K

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

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

Узнать, к чему это я
Total votes 35: ↑35 and ↓0+35
Comments5

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

Reading time19 min
Views7.2K

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

Читать далее
Total votes 13: ↑13 and ↓0+13
Comments36

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

Reading time7 min
Views3.8K
image1.png

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

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

Reading time2 min
Views9.6K

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

Читать далее
Total votes 20: ↑2 and ↓18-15
Comments16

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

Reading time4 min
Views4K
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 почти за миллиард долларов. Наша изначальная идея заключалась в создании онлайн реалити-шоу. Трудно найти связь между этой идеей и созданием сайта для стриминга видео, где люди наблюдают за геймерами и общаются в чате со своими друзьями, а ведь именно таким и стал сервис. Итак, не попадайтесь в эту ловушку – не думайте, что ваша идея обязана быть «великой» (что бы это ни значило).

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


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

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

Формулирование личных связей с проблемой может помочь по двум причинам:
Total votes 10: ↑6 and ↓4+7
Comments6

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

Reading time10 min
Views34K
Добрый вечер, коллеги.

Перевод статьи, который мы вам предложим сегодня, призван помочь ответить на вопрос: а назрела ли необходимость целой книги по оптимизации кода на Java? Надеемся, что материал не только покажется вам интересным, но и пригодится на практике. Пожалуйста, не забудьте проголосовать.
Читать дальше →
Total votes 22: ↑18 and ↓4+14
Comments15

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

Reading time5 min
Views43K
Прошлые статьи с цифрами нашли положительный отклик среди читателей, поэтому — на этот раз нечто совершенно иное — ещё один статистический сборник: рынок труда в Java, цифры из вакансий, резюме и заработные платы. Сам наш hh.ru в большей части написан на ней — уже ~15 лет мы следим за всей экосистемой Java и за динамикой джавистов на рынке.

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


Читать дальше →
Total votes 26: ↑24 and ↓2+22
Comments19

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

Reading time4 min
Views39K

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


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

Читать дальше →
Total votes 20: ↑17 and ↓3+14
Comments9

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

Reading time12 min
Views29K
Доброго времени суток, уважаемые.

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

Прошу под кат.
Читать дальше →
Total votes 34: ↑19 and ↓15+4
Comments9

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

Reading time28 min
Views214K
image

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

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

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

• Как собрать и подготовить данные для построения модели?
• Что такое нейронная сеть и как она устроена?
• Как написать свою нейронную сеть с нуля?
• Как правильно обучить нейронную сеть на имеющихся данных?
• Как интерпретировать модель и ее результаты?
• Как корректно оценить качество модели?
Поехали!
Total votes 51: ↑42 and ↓9+33
Comments43

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

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

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

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

Reading time7 min
Views1.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.
Читать дальше →
Total votes 120: ↑111 and ↓9+102
Comments38

Information

Rating
Does not participate
Registered
Activity