Search
Write a publication
Pull to refresh
4
1

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

Send message

Кастомизируем маппинг контроллеров Spring MVC

Reading time6 min
Views10K

Введение


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

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

Тред Ариадны: как полюбить JSR-133. Доклад Яндекса

Reading time12 min
Views5.7K
Многоядерные процессоры — обыденность. Рано или поздно любому программисту-практику придется зайти в лабиринт многопоточного программирования и встретиться с населяющими его «чудовищами». Поговорим о том, с чего начать такой путь и какие инструменты и подходы помогут выйти победителем. Я выступил с этим докладом перед будущими участниками круглогодичной стажировки Яндекса.


— Меня зовут Сева Миньков. Я работаю в отделе облачной инфраструктуры поискового департамента. Занимаюсь в основном бэкендом. Пишу на разных языках, но чаще всего это Java и языки, запускаемые на Java Virtual Machine (JVM).
Читать дальше →

Многопоточность в Java: ExecutorService

Reading time2 min
Views250K
В Java 5 было добавлено много вещей для организации многопоточности и особенно касаемо организации параллельного доступа. В этой и последующих статьях мы пройдемся по некоторыми из них.
ExecutorService и ScheduledExecutorService будут рассмотрены в этой статье

Размышления про идеальный корпус

Reading time7 min
Views47K

Здравствуйте. На написание этой статьи меня побудил наметившийся апгрейд домашней системы и недавняя статья Настольный. Металлический. Бесшумный. Твой?. Чтобы найти приемлемый вариант мне пришлось перелопатить кучу моделей корпусов и сейчас я хочу поделиться своей болью с вами.


В статье будут описаны типичные проблемы типичных корпусов (с кучей картинок), несколько примеров хороших компоновок и мои пожелания насчет идеального корпуса. Я не буду указывать ссылки на модели корпусов, так как не хочу делать кому-то рекламу или антирекламу.



Типичный компьютерный корпус с точки зрения термодинамики

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

40 каналов и чатов для тех, кто интересуется DevOps

Reading time3 min
Views25K
Сфера DevOps развивается очень стремительно. Команда DevOpsDays Moscow составила список каналов и чатов для тех, кто интересуется DevOps и хочет оставаться в центре событий. Мы сами читаем эти каналы, а некоторыми даже руководим.

Все сообщества для удобства мы разделили на группы: общие, про инструменты, новостные и те, кого нет в телеграме. Надеемся, вам будет полезно.


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

О чем молчит EXPLAIN, и как его разговорить

Reading time4 min
Views24K
Классический вопрос, с которым разработчик приходит к своему DBA или владелец бизнеса — к консультанту по PostgreSQL, почти всегда звучит одинаково: «Почему запросы выполняются на базе так долго?»

Традиционный набор причин:

  • неэффективный алгоритм
    когда вы решили сделать JOIN нескольких CTE по паре десятков тысяч записей
  • неактуальная статистика
    если фактическое распределение данных в таблице уже сильно отличается от собранной ANALYZE'ом в последний раз
  • «затык» по ресурсам
    и уже не хватает выделенных вычислительных мощностей CPU, постоянно прокачиваются гигабайты памяти или диск не успевает за всеми «хотелками» БД
  • блокировки от конкурирующих процессов

И если блокировки достаточно сложны в поимке и анализе, то для всего остального нам достаточно плана запроса, который можно получить с помощью оператора EXPLAIN (лучше, конечно, сразу EXPLAIN (ANALYZE, BUFFERS) ...) или модуля auto_explain.

Но, как сказано в той же документации,
«Понимание плана — это искусство, и чтобы овладеть им, нужен определённый опыт, …»
Но можно обойтись и без него, если воспользоваться подходящим инструментом!
Читать дальше →

48 open source ресурсов для JavaScript (2019)

Reading time3 min
Views17K
image

Мы выбрали из 20 000 проектов и библиотек для JavaScript 48 самых лучших (по звёздам на GitHub) и сгруппировали в 5 категорий:

  • Пользовательский интерфейс (1~9)
  • Инструменты JavaScript (10~25)
  • Machine Learning (26~33)
  • Проекты (34~39)
  • Инструменты разработчика (40~48)
Читать дальше →

VPN-дайджест: Ознакомительные и практические материалы на Хабре и не только

Reading time4 min
Views22K
Мы разрабатываем свой сервис по предоставлению виртуальной инфраструктуры и предлагаем к использованию готовую реализацию виртуальных сетей (VLAN) для арендуемых у нас серверов. Наша задача относительно работы с подобными технологиями — предоставить возможность и помочь настроить все самостоятельно, например VPN на физическом или виртуальном сервере (VPS/VDS).

Помимо подготовки собственных тематических руководств и развития службы тех. поддержки мы решили задействовать и свой блог на Хабре. Для этого мы отобрали наиболее заметные и интересные материалы, которые выходили на этой площадке. Этот список мы дополнили англоязычными источниками.
Читать дальше →

Что нового в Spring Boot 2.2?

Reading time8 min
Views9.5K
Перевод статьи подготовлен специально для студентов курса «Разработчик на Spring Framework».




16 октября 2019 года был выпущен Spring Boot 2.2 !

В этом посте вы узнаете о многих новых плюшках, которые предлагает вам версия 2.2.
Читать дальше →

Аддиктивные синдромы IT

Reading time12 min
Views20K

Здравствуйте, меня зовут Алексей. Я работаю в IT-сфере. Много времени провожу в социальных сетях и мессенджерах по работе. И у меня развились различные аддиктивные сценарии поведения. Я отвлекался от работы и заглядывал в Facebook, чтобы посмотреть, сколько «лайков» накапало на какую-то резонансную публикацию. И вместо того, чтобы дальше работать с новыми текстами, я подвисал на состоянии старого. Я несколько раз за час практически неосознанно брал в руки смартфон — и в какой-то степени меня это успокаивало. Давало контроль над жизнью.


В некий момент я остановился, задумался — и решил, что-то не так. Я почувствовал ниточки за моими плечами, которые периодически меня дёргают, заставляя делать то, что мне на самом деле не нужно.


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



— Па-ап, мы все на одну фоточку помещаемся? — Не бойся, у меня на смарте широкоугольник.

DDoS-атака на RDP-службы: распознать и побороть. Успешный опыт от Tucha

Reading time4 min
Views16K
Расскажем вам прохладную историю о том, как «третьи лица» пытались помешать работе наших клиентов, и как эта проблема была решена.

Как всё началось


А началось всё с утра 31 октября, в последний день месяца, когда многим позарез необходимо успеть закрыть срочные и важные вопросы.

Один из партнёров, который держит в нашем облаке несколько виртуальных машин клиентов, которых он обслуживает, сообщил о том, что с 9:10 до 9:20 сразу несколько Windows-серверов, работающих на нашей украинской площадке, не принимали соединения со службой удалённого доступа, пользователи не могли зайти на свои рабочие столы, но через несколько минут проблема как будто бы устранилась сама собой.

Мы подняли статистику работы каналов связи, но не обнаружили ни всплесков трафика, ни провалов. Заглянули в статистику нагрузки на вычислительные ресурсы – никаких аномалий. И что это было?

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

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

4 толковых канала на Youtube про технические собеседования

Reading time4 min
Views28K
Смотрю разные каналы ребят, которые проходят/проводят интервью в крупных компаниях и рассказывают про это. На русском прям что-то крутое не попадалось, но вот личный топ каналов на английском:


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

Ubuntu + XRDP + x11RDP терминальный сервер, с поддержкой звука, для серфинга в интернете — пошаговое руководство

Reading time10 min
Views130K
Особенно нетерпеливых отсылаю сразу в конец статьи где будет ссылка на готовый .deb-пакет для установки.

А для всех остальных…

Что это такое и для чего это нужно


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

История номер один. (основано на реальных событиях)


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

Что мы делаем не так со Спрингом

Reading time9 min
Views13K

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


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

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

Задачи на собеседованиях в Яндексе

Reading time15 min
Views360K
Открытые вакансии на должность разработчика в Яндексе есть всегда. Компания развивается, и хороших программистов не хватает постоянно. И претендентов на эти должности тоже хоть отбавляй. Главная сложность – отобрать действительно подходящих кандидатов. И в этом плане Яндекс мало чем отличается от большинства крупных IT-компаний. Так что базовые принципы, описываемые в этой статье, могут быть применимы не только к Яндексу.

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

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

IT Релокация. Из Бангкока в Сидней

Reading time13 min
Views35K


Доброго времени суток дорогой читатель. Если ты знаком с моей историей переезда в Бангкок, то, я думаю, тебе будет интересно послушать еще один мой рассказ. В начале апреля 2019 года я переехал в самый лучший город на Земле — Сидней. Занимай свое уютное кресло, завари теплый чаек и добро пожаловать под кат, где тебя ждет множество фактов, сравнений и мифов о Австралии. Что же, погнали!

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

Подтянуть английский для собеседования — методика и трудозатраты

Reading time4 min
Views28K
image

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

Различия между MVVM и остальными MV*-паттернами

Reading time11 min
Views166K


От переводчика:
Уже опубликовано много материалов по MVC и его производным паттернам, но каждый понимает их по-своему. На этой почве возникают разногласия и холивары. Даже опытные разработчики спорят о том, в чем отличие между MVP, MVVM и Presentation Model и что должен делать тот или иной компонент в каждом паттерне. Ситуация усугубляется еще и тем, что многие не знают истинную роль контроллера в классическом варианте MVC. Предлагаю вашему вниманию перевод хорошей обзорной статьи, которая многое проясняет и расставляет всё по своим местам.
Разобраться в MV-паттернах

Заблуждения Clean Architecture

Reading time15 min
Views448K
Превращаем круги в блоки

­­ 


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

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

Как заговорить на английском через месяц. 9 простых и проверенных шагов

Reading time8 min
Views463K
Хабр, привет!

Меня зовут Марина Могилко, я кофаундер онлайн-платформы LinguaTrip.com.

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

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

Итак, начинаем! Осторожно: под катом мини-словарик на все случаи жизни.

image

Information

Rating
2,673-rd
Location
Ижевск, Удмуртия, Россия
Works in
Date of birth
Registered
Activity