Посты | OTUS
Начинаем с Ansible в стиле best-practice

Linux_Deep_29.06_SITE.png

На просторах сети есть много гайдов на русском вроде «Учим Ansible с нуля». Но ни в одном из них я не видел, чтобы человека сразу же погружали в best-practice. Хотя бы в плане построение древа директорий для ролей. Считаю, что сделать это надо хотя бы потому, что переезд на best-practice может оказаться болезненным для новичков. Сейчас я попытаюсь исправить этот недочёт. Используемая в примерах ОС – Centos 7.5.

Прибавляем два часа рабочего времени на PHP

PHP_Deep_29.06_SITE.png

Представим: за час до конца рабочего дня, 29 декабря 2017 года, вам поручили срочное двухчасовое задание – рассчитать на PHP время его окончания. Казалось бы, что тут сложного? Добавить 2*3600 секунд к текущему времени и всё!

Место JavaScript во FrontEnd'e

JS_Deep_28.06_SITE.png

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

World Wide Web Consortium описывает такие концепции, как HTML, CSS или DOM (Document Object Model); – Internet Engineering Task Force (IETF); – International Organization for Standardization; – Web Hypertext Application Technology Working Group (WHATWG); – European Computer Manufacturers Association (ECMA) известная разработчикам по стандарту EcmaScript языка JavaScript.

Лень – двигатель бизнес-процессов

BA_Deep_27.06_Site.png

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

Рассказываю конкретнее

Самый крупный пример такой работы – кейс внедрения модели профессиональных компетенций для ИТ-специалистов в ГВЦ ОАО «РЖД». На входе было 10 000 персонала сотрудников, из них около 5000 ИТ-специалистов, 1500 систем, 23 функциональных распределённых по России подразделения, а значит 23 направления профессиональных компетенций.

А где же код работы с JPA?

Spring_Deep_26.06_2_Site.png

Одной из замечательных возможностей Spring является Spring Data JPA. Это один из «подпроектов» проекта Spring Data. По умолчанию, будем считать, что вы уже знаете, что такое JPA. Итак, нам необходимо написать обычное DAO для некоторой JPA сущности, предположим, Student.

Да, здесь следует сделать небольшую поправку. Когда речь идёт о бизнес-сущностях и JPA, то правильнее применять термин репозиторий (Repository), что мы и будем дальше делать.

Service Provider Interface (SPI)

VKjavaDeep1.png

Вот представьте: повысили вас до ведущего разработчика! Не номинально, а по-настоящему – будете отвечать за техническое развитие продукта. И вот заходите вы в почту, естественно, чтобы должность в подписи поменять, а там...

FAQ (Часто задаваемые вопросы и ответы)

Документы и финансы

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

В: Способы оплаты. О: Оплату можно производить с помощью банковской карты (Visa, Maestro, Mastercard, Мир), чере

Асинхронный CompletableFuture. Часть 2

Java_Deep_22.06_3_Site.png

У CompletableFuture есть ещё интересные функции. Например, надо построить цепочку из асинхронных вызовов. Т.е. после завершения первой асинхронной функции запустить вторую, после второй третью и т.д. В JavaScript для этого применяются promise. В Java можно использовать CompletableFuture.

Асинхронный CompletableFuture. Часть 1

Java_Deep_22.06_2_Site.png

Время от времени появляется необходимость выполнить асинхронно (т.е. одновременно с основным действием программы выполняется другая задача) какой-нибудь код. Например, отправить письмо по e-mail или что-нибудь из базы данных прочитать. В Java для подобных операций можно создать поток и выполнить в нём нужное действие.