Архив метки: programming

habr.com: Как не мусорить в Java

Интересная статья на habr.com о том, как писать на Java low-latency приложения так, чтобы в heap не создавался мусор и значит не вызывался сборщик мусора, который может привести к непредсказуемым задержкам в самый непододящий момент торгового дня. Почитайте также и комментарии.

Реклама

Epic fails: учиться на чужих ошибках никогда не поздно

Учиться программисту нужно всегда, чтобы не отстать от бешеных темпов развития технологий 21-ого века. Еще полезно программисту учиться на чужих ошибках. В качестве ежедневного чтива люблю читать следующие сайты:

Читать далее

Жил был программист Richard Rose

Жил был программист Richard Rose.

После работы на ведущие банки мира (Goldman Sachs, Morgan Stanley, Bank of America, UBS и прочее), он решил, что настало время уйти на вольные хлеба и реализовать свои идеи и наработки в коммерческом продукте. План состоял в том, чтобы создать движок, совмещавший OMS и соединение с рынком, который бы способен был перемещать сообщения с задержкой в микросекунды и даже меньше. Движок был написан на Java.

Читать далее

Java 11 и Epsilon GC

В Java 11 представлен новый экспериментальный сборщик мусора Epsilon GC. Несмотря на название, он не собирает мусор, а только аллоцирует память и не освобождает её. Соответственно, по исчерпании свободной памяти, возможен креш с OutOfMemory. Для чего такой сборшик мусора может пригодиться?

Читать далее

Java-эксперты, которых надо знать в лицо

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

Читать далее

Программному архитектору в помощь

Только что закончил читать книгу Thinking Architecturally от компании Pivotal. Очень хорошо, кратко, сжато описано как программному архитектору следить за новинками и трендами в IT-индустрии, как проводить оценку новых технологий и сравнивать пригодность той или иной технологии для определенного проекта.

Читать далее

Журнал Technology Radar: ваш ориентир в джунглях информационных технологий

Каждый программист, если он хочет не отстать от жизни, должен следить за изменениями в сфере IT. Самостоятельно это делать очень трудно (но, при опеределённом усилии, можно): нужно читать новости, просматривать форумы, следить за выходом новых книг, смотреть презентации с недавно прошедщих конференций и постоянно отсеивать ценную информацию от хайпа и рекламы.

Читать далее

Как эффективно работать с Git

Отличная статья о Git и политике создании веток в Git-репозитарии.

По своему личному опыту Git мне сначала показался слишком сложным в сравнении с SVN. Все эти merge, reset, rebase, pull, push, commit были некими излишними концепциями, когда в Subversion было только update и commit. Но привыкание к Git наступило примерно через месяц активной работы, особенно потому, что переход на Git в нашем проекте был проведен насильно и возврата к Subversion в проекте не предполагалось. Теперь я с уверенностью могу сказать, что Git в большой команде и большом проекте — вещь просто незаменимая.

Читать далее

Top 15 вопросов по многопоточности в Java, которые могут задать на интервью в инвестиционном банке

Весьма толковый блог Java Reivisted разработчика, который работает в той же сфере, что и я. В его посте — краткая выжимка по многопоточности в Java, что может понадобиться освежить память перед интервью в инвестиционном банке.

Во имя высокой скорости обработки данных и снижения latency в брокерских отделениях банков стараются выжать из железа по-максимуму. Многопоточность тут важна и играет существенную роль, особенно в приложениях связанных с торговлей, доступом к биржам, обработкой рыночных данных, в движках алгоритмической торговли, в системах управленяи ордерами, в smart order routing системах. Чем ближе ваше приложение к рынку, тем ниже должна быть latency, тем выше требования к разработчикам, пишущим данные приложения.

Чтение на выходные: 12 факторов приложений готовых для облака

Интересный сайт 12factor.net про лучшие практики программирования приложений и выкатывания их на продакшен с упором на облачные прилодения. 

Сайт сделан в виде документа-манифеста с главами и иллюстрациями. Есть версия и на русском. Поучительное и полезное чтение.

И вот еще презентация на эту тему c демонстрацией этих принципов на Heroku, начиная с середины. Пользуясь этой презентацией, я завел пробный аккаунт на Heroku и вывел пробное Java-приложение, склееное с помощью Spring Boot. В результате я полюбил Spring Boot еще больше. Для low-latency он конечно не подойдет, но для рядовых приложений подходит прекрасно. Считаю, что Spring Boot должен освоить любой уважающий себя Java-разработчик: всегда пригодится. 

В качестве развития этой темы компания Pivotal дополнила 12 факторов еще тремя и опубликовала короткую книгу Beyond the 12 Factor App: Exploring the DNA of Highly Scalable, Resilient Cloud Applications