Как стать автором
Обновить
2
0
Евгений @klim76

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

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

Что такое Spring Framework? От внедрения зависимостей до Web MVC

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


Вы можете использовать это руководство для различных целей:


  • Чтобы понять, что такое Spring Framework
  • Как работают ее основные фичи: такие как внедрение зависимостей или Web MVC
  • Это также исчерпывающий FAQ (Перечень часто задаваемых вопросов)

Примечание: Статья ~ 9000 слов, вероятно, не стоит читать ее на мобильном устройстве. Добавьте ее в закладки и вернитесь позже. И даже на компьютере ешь читай этого слона по одному кусочку за раз :-)


Содержание


  • Введение
  • Основы внедрения зависимостей
  • Контейнер Spring IOC / Dependency Injection
  • Spring AOP (Аспектно-ориентированное программирование) и прокси
  • Управление ресурсами Spring
  • Spring Web MVC
  • Дополнительные модули Spring Framework
  • Spring Framework: часто задаваемые вопросы
  • Заключение
Читать дальше →
Всего голосов 17: ↑14 и ↓3+17
Комментарии14

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

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


На Хабре много статей о том, как самостоятельно изучать английский язык. Но вот вопрос, а как оценить свой уровень при самостоятельном изучении? Понятно, что есть IELTS и TOEFL, но эти тесты почти никто не сдает без дополнительной подготовки и эти тесты, как говорят, оценивают не сколько уровень владения языком, а скорее умение проходить эти самые тесты. Да и использовать их для контроля самообучения будет накладно.

В этой статье я собрал различные тесты, которые проходил сам. При этом я сверяю свою субъективную оценку владения языком с результатами тестов. А также сравниваю результаты между разными тестами.
Читать дальше →
Всего голосов 81: ↑77 и ↓4+91
Комментарии62

Можно ли заработать больше, работая инженером, в другой стране?

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

Содержание:


Как можно сейчас сравнивать страны по стоимости жизни?
Про паритет покупательной способности
Почему BIM (инженеры и координаторы)
Вывод 1. Разное брутто — равное нетто
Вывод 2. Чем меньше брутто, тем больше m²
Откуда брались данные
Методология расчета показателей ППС

Довольно часто в разговоре с людьми из других стран мы начинаем сравнивать уровни заработной платы. Хотя валовой доход может существенно отличаться, покупательная способность, скорее всего, останется примерно на одном уровне, что особенно очевидно на рынке недвижимости.
Действительно ли трава «зеленее» — на той, другой стороне?
Читать дальше →
Всего голосов 81: ↑64 и ↓17+47
Комментарии484

Почему не SQL?

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


Без преувеличения можно сказать, что SQL — один из самых распространенных в мире языков. Информационные системы могут быть написаны на Java, Python, JavaScript, C#, PHP и десятке других языков, но SQL база в том или ином виде будет в абсолютном большинстве таких систем. Среди бизнес-приложений процент систем, использующих SQL, вообще стремится к 100%.

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

При этом речь в статье пойдет не о «вкусах и цветах фломастеров». Все затрагиваемые проблемы носят фундаментальный характер: присутствуют при разработке практически любой информационной системы и не ограничиваются «красотой кода», а в той или иной степени приводят либо к критическому падению производительности, либо к существенному росту порога вхождения, либо к значительным трудозатратам со стороны разработчика.
Читать дальше →
Всего голосов 92: ↑87 и ↓5+82
Комментарии179

Справочник по источникам событий в Rx

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


RxJava используется в большом количестве android-приложений, но при этом многие не знают других источников событий, кроме Observable и, может быть, Flowable. Они забывают о специализированных классах Single, Maybe и Completable, которые зачастую способны добавить больше ясности в код.

Под катом вас ждёт шпаргалка по источникам событий, которые существуют в RxJava.
Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии4

Самые интересные металлы

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

Кто не слушает металл — тому бог ума не дал!

— Народное творчество

Привет, %username%.

gjf снова на связи. Сегодня буду совсем краток, потому что через шесть часов вставать и ехать.

А рассказать я сегодня хочу о металле. Но не о том, который музыка, — о том мы можем поговорить как-нибудь за кружечкой пива, а не на Хабре. И даже не о металле — а о металлах! И рассказать я хочу о тех металлах, которые меня в жизни так или иначе поразили своими свойствами.

Поскольку все участники хит-парада отличаются какими-то своими суперспособностями, то мест и победителей не будет. Будет — металлическая десятка! Так что порядковый номер ничего не означает.

Поехали.
Читать дальше →
Всего голосов 230: ↑220 и ↓10+210
Комментарии271

30 Android-библиотек и инструментов, которые не должны пройти мимо вас в 2018 году

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

30 Android-библиотек и инструментов, которые не должны пройти мимо вас в 2018 году


В течение лета 2018 года было разработано и обновлено множество отличных Android-библиотек и инструментов.


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


Надеюсь, вам понравится. Давайте начнём!

Читать дальше →
Всего голосов 20: ↑17 и ↓3+14
Комментарии5

Flutter для Android-разработчиков. Как создавать UI для Activity, используя Flutter

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

Flutter для Android-разработчиков. Как создавать UI для Activity, используя Flutter


Эта статья написана для Android-разработчиков, которые хотят применить свои существующие знания для создания мобильных приложений с помощью Flutter. В этой статье мы рассмотрим эквивалент Activity во Flutter.

Читать дальше →
Всего голосов 27: ↑25 и ↓2+23
Комментарии14

Как подготовиться к собеседованию в Google и не пройти его. Дважды

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


Заголовок статьи звучит как epic fail, но на самом деле все не так однозначно. Да и в общем и целом эта история закончилась весьма позитивно, хоть и не в Google. Но это уже тема для другой статьи. В этой же статье я расскажу о трех вещах: каким образом проходил мой процесс подготовки, каким образом проходили интервью в Google и почему же на мой взгляд все не так однозначно, как может показаться.
Кому интересно, прошу под кат.
Всего голосов 178: ↑174 и ↓4+170
Комментарии457

Памятки по искусственному интеллекту, машинному обучению, глубокому обучению и большим данным

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


В течение нескольких месяцев мы собирали памятки по искусственному интеллекту, которыми периодически делились с друзьями и коллегами. В последнее время сложилась целая коллекция, и мы добавили к памяткам описания и/или цитаты, чтобы было интереснее читать. А в конце вас ждёт подборка по сложности «О большое» (Big-O). Наслаждайтесь.

UPD. Многие картинки будут читабельнее, если открыть их в отдельных вкладках или сохранить на диск.
Читать дальше →
Всего голосов 51: ↑47 и ↓4+43
Комментарии9

Английский язык: взгляд инженера

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

ДИСКЛЕЙМЕР


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

Здесь приводится опыт, который выдернул меня из состояния «читаю со словарем».




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

Возьмем такой предмет, как английский язык. Там куча понятий: 12 времен глагола, страдательный залог, причастия и т.п. Кто их ввел? Видимо, некие ученые мужи, для которых английский язык был РОДНЫМ. Они жили себе в каком-нибудь Oxford’e или в Cambridg’e и вряд ли знали русский язык.

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

Вспомните, как вы в школе изучали русский язык. Подлежащее, сказуемое, дополнение, определение… и штук 200 правил, из которых куча исключений, которые все благополучно забывают, кроме собственно учителей русского. И которые потом нужны – максимум – при разборках с бюрократическими документами («казнить нельзя помиловать»).

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

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

Статья ориентирована именно на таких.
Читать дальше →
Всего голосов 95: ↑77 и ↓18+59
Комментарии288

Курс о Deep Learning на пальцах

Время на прочтение2 мин
Количество просмотров174K
Я все еще не до конца понял, как так получилось, но в прошлом году я слово за слово подписался прочитать курс по Deep Learning и вот, на удивление, прочитал. Обещал — выкладываю!

Курс не претендует на полноту, скорее это способ поиграться руками с основными областями, где deep learning устоялся как практический инструмент, и получить достаточную базу, чтобы свободно читать и понимать современные статьи.

Материалы курса были опробованы на студентах кафедры АФТИ Новосибирского Государственного Университета, поэтому есть шанс, что по ним действительно можно чему-то научиться.


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

Подборка бесплатных утилит компьютерной криминалистики (форензики)

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

В этой статье представлены бесплатные инструменты для проведения расследования инцидентов информационной безопасности.
Читать дальше →
Всего голосов 49: ↑48 и ↓1+47
Комментарии18

10 самых популярных сайтов для соревнований программистов на начало 2018 года

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


В конце 2016 года была опубликована аналогичная статья. С тех пор список был обновлен на основе наблюдений и анализа нескольких ресурсов (постов в популярных блогах, обсуждений на Quora, поисковых запросов в Google и обсуждений на форумах, таких как reddit/learnprogramming и Hacker News).

Предлагаем вниманию читателей обновленный список на 2018 год, который включает в себя 10 платформ, которые по личному мнению автора являются лучшими соревновательными площадками для программистов и содержат ресурсы, которые могут помочь начинающим и Intermediate-разработчикам совершенствовать свои навыки, подготовиться к собеседованию и продвинуться по своей карьерной лестнице.

На этих сайтах также можно просто посоревноваться с коллегами или развлечься, решая интересные головоломки. Порядок составления списка основан лишь на уровне сложности заданий: от начального до продвинутого.
Читать дальше →
Всего голосов 25: ↑25 и ↓0+25
Комментарии13

История переезда системного администратора в Германию. Часть первая: поиск работы и виза

Время на прочтение18 мин
Количество просмотров47K
Всем привет.

Я решил опубликовать историю своего переезда на работу в Германию, максимально подробно описав все стадии оного — от принятия решения начать поиск работы за рубежом до собственно переезда, поиска жилья и решения многочисленных вопросов на месте. Побудило меня к этому, во-первых, очень малое количество историй успешного поиска работы в Германии именно сисадмином (а в этой области своя специфика, отличная от программирования), а во-вторых — некоторая нестандартность моего случая. Обычно за границу уезжают либо в одиночку, либо с женой-детьми, я же уезжал вместе с сестрой, что добавило очень много нюансов к визовым вопросам.

Это будет длинная история в трех частях, где я постараюсь максимально осветить все грабли, по которым пришлось пройти.
Читать дальше →
Всего голосов 53: ↑50 и ↓3+47
Комментарии133

Как написать хороший SLA

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

Как написать хороший SLA (Service Level Agreement, оно же Соглашение об уровне сервиса). И какой SLA будет хорошим.


Эта статья является попыткой обобщить имеющийся опыт, а также на неё я собираюсь ссылаться, когда меня будут в дальнейшем спрашивать, как должен выглядеть SLA. Работая в индустрии не первый десяток лет, я к своему удивлению регулярно сталкиваюсь с серьёзным непониманием основ, на которых строится SLA. Наверное, потому что документ довольно экзотический. После прочтения данного текста, я надеюсь, у вдумчивого читателя точечки над ё должны встать на свои места. Целевая аудитория — те, кто пишет SLA, и им сочувствующие.

Ниже сплошной текст без диалогов и картинок
Всего голосов 14: ↑14 и ↓0+14
Комментарии5

Пошаговый план старта на Upwork

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

Рано или поздно разработчик всерьез задумывается о фрилансе. В этот момент большинство идут на биржи. Выбор бирж огромен. В СНГ: fl.ru, weblancer и прочие. Но когда доходишь до дела начинаешь понимать в каком все упадке. Единственным местом где водятся более-менее нормальные заказы можно назвать fl.ru и еще одну-две биржы. Но на fl.ru нужен pro аккаунт, ведь оказывается чтобы взять заказ нужно заплатить бирже, и далеко не факт что тебе что-то светит. Поэтому было решено идти на Upwork.
Читать дальше →
Всего голосов 57: ↑51 и ↓6+45
Комментарии99

Как я использую git

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

Intro


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


  • git add <path>
  • git commit
  • git checkout <path/branch>
  • git checkout -b <new branch>

И дополнительно:


  • git push/pull
  • git merge <branch>
  • git rebase master (а что, можно еще и на другие ветки ребейзить? О_о)

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

Читать дальше →
Всего голосов 117: ↑106 и ↓11+95
Комментарии195

Как держать 20 тысяч VPN клиентов на серверах за $5

Время на прочтение24 мин
Количество просмотров85K
Месяц назад мы с друзьями сделали бесплатный сервис для обхода блокировок сайтов в Украине Zaborona.Help. За это время сервис стал довольно популярным, аудитория выросла до 20 000 пользователей. Число одновременных подключений в пиковые часы — ≈6 000 клиентов.

Главная особенность нашего сервиса в том, что через VPN маршрутизируется трафик только к заблокированным сетям, остальные сайты работают напрямую. Это не влияет на скорость интернета и не подменяет IP-адрес для остальных сайтов.

В статье описываются тонкости настройки OpenVPN для большого числа клиентов, на дешевых VPS.

  • Как выбрать подходящий хостинг. Отличительные черты плохого хостинга. История о том, как мы долго искали и нашли хостинг в России.
  • Почему IPv6 — хорошо. Правильная настройка IPv6-адресов для VPN-клиентов.
  • Изменение конфигурации OpenVPN на лету, без перезапуска сервера и отключения клиентов.
  • Балансировка нагрузки между серверами и процессами OpenVPN
  • Тонкая настройка Linux для большого числа подключений
  • Особенности кривых операционных систем и роутеров пользователей

Наш опыт будет полезен для тех, кто собирается развернуть VPN для личных нужд, и тех, кто хочет создать сервис с большим числом клиентов.
Читать дальше →
Всего голосов 79: ↑71 и ↓8+63
Комментарии139

Немного о ServiceNow, ITSM и ServiceDesk в формате подборки полезных материалов

Время на прочтение3 мин
Количество просмотров8.1K
Сегодня мы представляем вашему вниманию дайджест материалов по теме внедрения ServiceNow, ITSM и ServiceDesk. В этой подборке мы использовали только те материалы, которые подготовили самостоятельно и разместили в своем корпоративном блоге.

Читать дальше →
Всего голосов 11: ↑9 и ↓2+7
Комментарии4

Информация

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