Как стать автором
Обновить
-1
0

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

Отправить сообщение

QueryDSL: Предикаты

Время на прочтение8 мин
Количество просмотров50K
QueryDSL Predicate — это мощный и чрезвычайно гибкий инструмент для работы с БД и просто подарок для Java-разработчиков, которые не очень хорошо разбираются в SQL (или совсем не разбираются), поскольку предикаты позволяют работать с БД при помощи привычного объектного представления сущностных зависимостей.



Предикаты позволяют работать с элементами базы данных как с обычными полями класса. При сборке gradle создаёт специальные классы зависимостей, через которые и происходит поиск нужных записей в БД.
Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии8

Настройка валидации DTO в Spring Framework

Время на прочтение6 мин
Количество просмотров47K
Всем привет! Сегодня мы коснёмся валидации данных, входящих через Data Transfer Object (DTO), настроим аннотации и видимости — так, чтобы получать и отдавать только то, что нам нужно.

Итак, у нас есть DTO-класс UserDto, с соответствующими полями:

public class UserDto {

    private Long id;
    private String name;
    private String login;
    private String password;
    private String email;
}

Я опускаю конструкторы и геттеры-сеттеры — уверен, вы умеете их создавать, а увеличивать в 3-4 раза код смысла не вижу — представим, что они уже есть.

Мы будем принимать DTO через контроллер с CRUD-методами. Опять же, я не буду писать все методы CRUD — для чистоты эксперимента нам хватит пары. Пусть это будут create и updateName.
Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Комментарии22

Абстрактный CRUD от репозитория до контроллера: что ещё можно сделать при помощи Spring + Generics

Время на прочтение7 мин
Количество просмотров35K
Совсем недавно на Хабре мелькнула статья коллеги, который описал довольно интересный подход к совмещению Generics и возможностей Spring. Мне она напомнила один подход, который я использую для написания микросервисов, и именно им я решил поделиться с читателями.



На выходе мы получаем транспортную систему, для добавления в которую новой сущности нужно будет ограничиться инициализацией одного бина в каждом элементе связки репозиторий-сервис-контроллер.
Читать дальше →
Всего голосов 11: ↑9 и ↓2+7
Комментарии25

Как устроен склад алкоголя, и как нечеловекоподобный дрон может летать между бутылками

Время на прочтение6 мин
Количество просмотров9.8K
image

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

Но вернёмся к роботу. От него нужны три вещи:

  1. Двигаться по складу без помощи оператора.
  2. Считывать штрихкоды или QR-коды паллет и надписи около них.
  3. Превращать это в данные инвентаризации и передавать в WMS в итоге.

Казалось бы, простейшая задача для пятичасового хакатона. Но на деле всё немного не так. Начнём с того, что метки под скотчем или полиэтиленом (то есть нужно сопоставление нескольких кадров без бликов) имеют разный шрифт и бывают рваными или протёртыми.
Читать дальше →
Всего голосов 29: ↑29 и ↓0+29
Комментарии22

Миссия невыполнима: геолокация на Android без сжирания батарейки

Время на прочтение10 мин
Количество просмотров79K
Пользователь: это невозможно, GPS съест батарейку
Джуниор: это возможно, используй Geofences
Сеньор: есть варианты и получше

image
На картинке сначала в одну, а потом в другую сторону одновременно с одним человеком «прогулялись» 6 одинаковых телефонов. Но какой разный результат!
Читать дальше →
Всего голосов 44: ↑41 и ↓3+38
Комментарии12

Впечатляющие анимационные эффекты

Время на прочтение2 мин
Количество просмотров115K
С появлением jQuery, у веб-программистов появилась возможность создавать впечатляющие визуальные эффекты, не прибегая к использованию технологии flash. В данной статье представлено несколько ярких примеров того, каких потрясающих результатов можно достичь, используя стандартные средства браузера и свое воображение.
Читать дальше →
Всего голосов 262: ↑246 и ↓16+230
Комментарии78

Google Cloud Messaging: «Сова, открывай! Пуш пришел!»

Время на прочтение6 мин
Количество просмотров63K
Всем известный сервис Google Cloud Messaging (GCM) нужен для того, чтобы ваше приложение всегда показывало актуальные данные пользователю. Схема работы сервиса включает в себя три компоненты.



Непосредственно сервер GCM, ваш пуш-сервер и устройство с установленным приложением. Алгоритм работы простой: устройство регистрируется в GCM, получает registrationId – некий токен, который используется в дальнейшем, – сохраняет его у себя локально и передает серверу. Далее пуш-сервер использует этот registrationId для отправки сообщений вашему приложению на устройстве.

В этом материале будут рассмотрены проблемы на двух участках, который обозначены на схеме: пуш-сервер – GCM и GCM – устройство.
Читать дальше →
Всего голосов 45: ↑44 и ↓1+43
Комментарии30

Регистрация безналоговой компании в Эстонии

Время на прочтение5 мин
Количество просмотров168K
«Платить налоги – обязанность, платить мало налогов – искусство! » (с)

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

Задача стояла следующая — найти юрисдикцию, в которой не нужно платить налог на прибыль, при этом клиентам из США, Канады и ЕС удобно было с ней работать. Реальный офис открывать в этой стране задачи не стояло.

Основная деятельность компании — разработка ПО (классическая аутсорс компания со штатом ~20 девелоперов).
Читать дальше →
Всего голосов 61: ↑57 и ↓4+53
Комментарии73

Делаем приложение push'истым

Время на прочтение6 мин
Количество просмотров19K

Хочу поделиться своим user developer experience от внедрения WNS push notifications в приложение Windows Store. Приглашаю всех прочитать мои непутевые заметки о том, как я делал свое приложение белым и push'истым.
Принять приглашение
Всего голосов 27: ↑17 и ↓10+7
Комментарии1

Руки прочь от консоли

Время на прочтение3 мин
Количество просмотров138K
image

Любой организм стремится к гомеостазу. То есть к стабильности, предсказуемости, спокойствию.

Это означает, что любая встряска, любое резкое изменение порождает стресс. Особенно, если в 3 часа ночи, особенно если сразу надо что-то с этим делать, разбираться, чинить…

Кому знакома ситуация, когда что-то очень важное (база данных, финансовый сервис, айпад генерального) ВДРУГ перестают работать. Это всегда происходит вдруг… А вы как назло, отвечаете своей головой за это важное.

Большинство людей, включая меня, в этот момент испытывают реальный стресс. Сильный и опасный.

Вспоминаю случаи, когда мы делали по ночам работы по настройке сетевой безопасности РАО ЕЭС России, а потом нам звонили «срочно-все_сломалось-чините!». Сколько косяков я мог избежать, если бы не ломился сразу вбивать команды с колотящемся сердцем… Сколько оправданий можно было бы не придумывать. Ведь стыдно признаться в своей поспешности и глупости…
Читать дальше →
Всего голосов 129: ↑96 и ↓33+63
Комментарии94

Семейный бизнес в сфере IT. Время зарабатывать деньги

Время на прочтение8 мин
Количество просмотров88K


Предисловие


В конце 2012 года от нас ушел менеджер по продажам. В январе 2013 уволился программист, в марте ― верстальщик. Казалось, что все рушится. Но как же так? Ведь мы только-только создали команду и наладили работу. Сложившаяся ситуация удручала…

Я могла бы обманывать себя и обвинять наших бывших коллег в безответственности и неблагодарности. Но, давайте посмотрим правде в глаза: если менее, чем за полгода уволились трое из четырех сотрудников, проблема явно в компании и ее руководителях.
Читать дальше →
Всего голосов 115: ↑104 и ↓11+93
Комментарии58

Почему свет движется со скоростью света?

Время на прочтение5 мин
Количество просмотров85K
(Прим. пер. ― см. прим. пер. в конце поста)

Почему свет движется со скоростью света? Почему он просто не стоит на месте? Что приводит его в движение (тем более, такое быстрое)?

image

Всё и везде, просто по факту своего существования, «движется» со скоростью света (которая на самом деле не имеет ничего общего со светом). Да, это касается и вас тоже. Вот прямо сейчас.

Люди в основном воспринимают «вселенную» как «пространство», нечто отдельное от «времени», и честно говоря, они неправы. Пространство и время — не отдельные штуковины. Вселенная сделана из «пространствовремени», прямо так, без пробела. Вы, наверное привыкли к тому, что «год» — это единица времени, а «световой год» — единица расстояния, то есть это разные вещи; но с точки зрения физика это ровным счетом одно и то же (ну, конечно, смотря каким видом физики вы занимаетесь).

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

Читать дальше →
Всего голосов 217: ↑199 и ↓18+181
Комментарии303

Palo Alto Longevity Prize: миллион долларов за замедление процессов старения

Время на прочтение3 мин
Количество просмотров52K


Как известно, не так давно корпорация Google основала дочернюю компанию Calico, которая занимается вопросами бессмертия, или, если проще, то «лечением старости». У Google и партнерских компаний (одна из них — фармацевтический гигант из Чикаго, корпорация AbbVie) достаточно финансов, чтобы поддерживать исследования любого масштаба и интенсивности. Сейчас размеры инвестиций в Calico составляют полтора миллиарда долларов США.

Тем не менее, на днях было объявлено еще об одном проекте по борьбе со старостью и смертью. Речь идет о премии Palo Alto Longevity Prize, размер которой — 1 миллион долларов США. О премии было объявлено в Сан-Франциско, и вручена она будет ученому или коллективу, кто сможет справиться с двумия намеченными вопросами (соответственно, за решение каждого вопроса ученый или коллектив получает по 500 тысяч долларов США).

Читать дальше →
Всего голосов 44: ↑44 и ↓0+44
Комментарии33

PayPal заработал на прием на Россию

Время на прочтение1 мин
Количество просмотров2.6K
Сегодня утром залогинился в Пейпал и появилась новая вкладка — запрос платежей. Попробовал, напарник смог прислать мне платеж (русский эккаунт), а я ему. Экканунты у нас старые (3+ года), верифицированные. Так что поздравляю все русских пейпальщиков, у которых теперь появилась опция получения денег.

P.S. Выводить тоже можно, надо только ввести банковские реквизиты.

P.P.S. Странный глюк, после того, как вы сделает accept payment, он продолжает отражаться, как unclaimed. Но если вылогиниться и залогиниться обратно — баланс обновляется мгновенно.
Всего голосов 287: ↑276 и ↓11+265
Комментарии192

Как разработать свой бренд?

Время на прочтение5 мин
Количество просмотров8.9K
В интернете и книгах по маркетингу (и брендингу) приводится масса различных схем построения бренда: «колесо», «пирамида» и т.д. При желании можно найти подробное описание каждой из них (с реальными и, как правило, одними и теми же кейсами), вот только последовательность работы по созданию собственного бренда толком не описывается.
Еще один важный момент, что модели у различных авторов (Аакер, Линдстром и т.д.) часто учитывают различные аспекты взаимодействия бренда и потребителя. И при этом все они по-своему интересны, так что выбирать какую-то одну модель – значит отказываться от плюсов другой.
Мы работали со многими из этих схем бренда и в результате пришли к определенной последовательности действий, с помощью которой, не вдаваясь в дебри, можно разработать свой собственный бренд, сочетающий в себе лучшие особенности каждой из схем. Это «синтетическая» модель, где мы постарались учесть максимум важной информации и отсечь все, без чего можно обойтись.
Читать дальше →
Всего голосов 10: ↑6 и ↓4+2
Комментарии6

Делаем Desire HD из Desire

Время на прочтение5 мин
Количество просмотров17K


Буквально пару дней назад я прочитал пост Вторая жизнь HTC HD2 и задумался, а можно ли сделать Desire HD из моего Desire? Как оказалось, можно, и даже не очень сложно. В общем, поразмыслив некоторое время о плюсах и минусах перехода на HD, я приступил к превращению. После всех действий я получил все возможности Desire HD в корпусе Desire. Никаких проблем и ошибок не возникло.
Читать дальше →
Всего голосов 109: ↑96 и ↓13+83
Комментарии139

Ремонт «вырванных» клавиш клавиатуры ноутбука

Время на прочтение3 мин
Количество просмотров857K
Используя в повседневной жизни ноутбук, пользователи иногда встречаются с проблемой: «отломалась» клавиша на клавиатуре. Причиной может выступить любой фактор: чистка клавиатуры, использование пылесоса для чистки, шальная кошка (да, даже такое случается), маленький ребенок, интересующийся всем вокруг и случайно сорвавший клавишу, и много другого. Но не все знают, что это маленькую беду достаточно легко исправить.
Я расскажу Вам, как поставить кнопку обратно без потерь.
как починить клавишу на ноутбуке

(осторожно! очень много фотографий)
приступим
Всего голосов 118: ↑103 и ↓15+88
Комментарии75

Ускорение загрузки Windows for fun and profit

Время на прочтение4 мин
Количество просмотров805K
image Пожалуй, начну с того, что если перегружаться 15 раз в год, то любой «тюнинг» процесса загрузки отнимает больше времени, чем будет выиграно на перезагрузках за все время жизни системы. Однако, спортивный интерес берет свое, тем более, что люди интересуется процессом оптимизации быстродействия. А загрузка оказалась самым очевидным кандидатом в примеры того, как на мой взгляд должен выглядеть этот самый процесс. Сразу скажу, что грузиться будем с 5400 rpm винта, грузиться будем в «рабочую» систему: помимо недобитой вендорской крапвари там стоит еще куча всякого типа вижуал студии, антивируса, скайпа, стима, гуглапдейтера и пр…

Про то, почему отключение pagefile-а скорее вредно, чем полезно — как нибудь в другой раз, а пока…
Под катом много однообразных картинок и немножко унылого текста
Всего голосов 533: ↑517 и ↓16+501
Комментарии365

Переезд на работу в Данию

Время на прочтение11 мин
Количество просмотров132K
(Продолжение серии рассказов про Данию)

В данной статье я изложу свою историю устройства на работу, получения визы и переезда в Данию. История во многом субъективная, но не это ли делает такие рассказы интересными?

О себе: мне 31 год, я из Севастополя (да, на Хабре земляков всё больше), окончил СевНТУ. У меня красавица-жена и семилетний сын. Занимаюсь образовательным проектом. До переезда в Данию мы 6 лет жили в Киеве.

Причины переезда


Мы не «поравалитики». В целом, нам отлично жилось вна Украине. Конечно, мы понимали, что кругом многим не сладко. Так или иначе, сбежать из страны, прихватив трактор, не тянуло.

Вся идея изначально исходила от жены, её доводы были таковы:
  1. посмотреть мир,
  2. дать сыну возможность выучиться в мультиязычной среде.

Доводы хорошие, но меня убедили совсем другие вещи:
Читать дальше →
Всего голосов 188: ↑171 и ↓17+154
Комментарии186

Особенности отражения DDoS атак и история атаки на один крупный банк

Время на прочтение9 мин
Количество просмотров64K


Раньше DDoS-атаки могли успешно отбиваться на стороне ЦОДа атакуемой компании. Быстрые умные действия админа и хорошее фильтрующее железо гарантировали достаточную защиту от атак. Сегодня услуги ботнетов стремительно дешевеют, и DDoS становится доступен чуть ли не в малом бизнесе.

Около половины атак идут на интернет-магазины или коммерческие сайты компаний в духе «завалить конкурента», почти всегда атакуют сайты СМИ, особенно после «горячих» публикаций, намного чаще, чем кажется, бьют по госсервисам. В России главные цели – банки, розница, СМИ и тендерные площадки. Один из крупных российских банков, например, периодически блокирует трафик из Китая – атаки оттуда приходят с завидной регулярностью, одна из последних была больше 100 Гб/с.

Соответственно, когда атака переваливает, скажем, за 10 Гб/с, отражать её на своей стороне становится проблематично из-за банального забивания канала. Именно в этот момент нужно делать переключение на центр очистки данных, чтобы весь «плохой» трафик отсеивался ещё где-то около магистральных каналов, а не шёл к вам. Сейчас расскажу, как это работает у одного из наших вендоров защитных средств – Arbor, мониторящего около 90 Тбит/сек (45% мирового трафика Интернета).
Читать дальше →
Всего голосов 40: ↑36 и ↓4+32
Комментарии46

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность