Pull to refresh
95
85.5

Редактор

Send message

Открытый урок «iSCSI в Linux»

Reading time1 min
Views6.3K
Всем привет!

Выходим на финишную прямую по запуску обновлённого курса «Администратора Linux»: целиком обновили программу, провели открытые уроки, с одним из которых и делимся с вами. На уроке разбирается SAN и NAS и как настроить iSCSI target в Linux.


Как всегда ждём комментарии, вопросы тут или можете задать их преподавателям сегодня на Дне открытых дверей.

Спасибо!
Total votes 13: ↑12 and ↓1+11
Comments3

Внедрение предметно-ориентированного проектирования в PHP

Reading time15 min
Views23K
И снова здравствуйте!

Что ж очередной «новый» курс, который стартовал в конце декабря, подходит к концу — «Backend разработчик на PHP». Учли разные мелкие шероховатости и запускаем новый. Осталось только посмотреть на выпуск и всё, поставим очередную галочку.



А счас пока давайте посмотрим на одну интересную статью.

Поехали.

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

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

Читать дальше →
Total votes 22: ↑17 and ↓5+12
Comments91

Опасные pickles — вредоносная сериализация в Python

Reading time11 min
Views36K
Всем привет!

Panta rhei и вот уже приближается запуск обновленного курса «Web-разработчик на Python» и у нас остался ещё материал, который мы нашли сильно небезынтересным и коим хотим поделиться с вами.

Чем опасны pickles?
Эти соленые огурчики крайне опасны. Я даже не знаю, как объяснить, насколько. Просто поверь мне. Это важно, понимаешь?
“Explosive Disorder” Pan Telare

Прежде чем с головой погрузиться в опкод, поговорим об основах. В стандартной библиотеке Python есть модуль под названием pickle (в переводе “соленый огурчик” или просто ”консервация”), который используется для сериализации и десериализации объектов. Только называется это не сериализация/десериализация, а pickling/unpickling (дословно — “консервация/расконсервация”).


Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments24

Разбор основных концепций параллелизма

Reading time17 min
Views64K
Всем кофе!

Завтра у нас плавненько стартует практически юбилейный поток курс «Разработчик Java» — уже шестой по счёту начиная с апреля прошлого года. А это значит, что мы снова подобрали, перевели интереснейший материал, которым делимся с вами.

Поехали!

Эта памятка поможет Java-разработчикам, работающим с многопоточными программами, понять основные концепции параллелизма и способы их применения. Вы ознакомьтесь с ключевыми аспектами языка Java со ссылками на стандартную библиотеку.

РАЗДЕЛ 1

Вступление

С момента своего создания Java поддерживает ключевые концепции параллелизма, такие как потоки и блокировки. Эта памятка поможет Java-разработчикам, работающим с многопоточными программами, понять основные концепции параллелизма и способы их применения.

РАЗДЕЛ 2

Концепции

Концепция Описание
Atomicity (атомарность) Атомарная операция — это операция, которая выполняется полностью или не выполняется совсем, частичное выполнение невозможно.
Visibility (видимость) Условия, при которых один поток видит изменения, сделанные другим потоком

Таблица 1: Концепции параллелизма

Читать дальше →
Total votes 17: ↑15 and ↓2+13
Comments12

Открытый вебинар «Примеры паттернов»

Reading time1 min
Views7.9K
Доброго дня!

Намедни наш замечательный Виталий Чибриков в рамках его курса «Разработчик Java» провёл открытый урок, где разобрал в чём же польза паттернов в проектировании и вне, на примере нескольких из них в формате: постановка проблемы, решение и пример для каждого.



Если есть какие-то вопросы, то можете задать их тут или завтра на Дне открытых дверей.

Спасибо!
Total votes 19: ↑17 and ↓2+15
Comments0

Rsyslog 8. Централизованный сбор логов

Reading time2 min
Views15K
Всем добра.

Заканчиваем в этом месяце первый поток «Администратора Linux» и запускаем потихоньку второй, который теперь будет заметно переработан и усилен новыми преподавателями. Один из них — Алексей Цыкунов, делится сегодня небольшой полезной заметкой.

Поехали.

Задача


Есть несколько серверов, на которых крутятся программы, которые сохраняют логи в свои каталоги.

Необходимо централизовано сохранять все эти логи в подкаталогах по имени серверов, сохраняя названия файлов.

Возможности перенастроить программы для записи логов сразу в syslog нет.

Окружение:

  • server — centos7
  • client — centos6

И на клиенте и на сервере необходимо обновить rsyslog до последней версии.

cd /etc/yum.repos.d/
wget http://rpms.adiscon.com/v8-stable/rsyslog.repo
yum update rsyslog


Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments2

Золотое правило git rebase

Reading time4 min
Views29K
Всем привет!

Мы тут немного переделали наш курс посвящённый web-разработке и добавили ещё целый месяц изучения JS. Ну и как обычно у нас — рассмотрим что-нибудь интересное, что разбирается у нас на курсе. В данном случае — git rebase.

Поехали.

Что на самом деле происходит во время git rebase, и почему вас должно это волновать.

Основы rebase-а

Таким вы могли бы представить себе rebase в git:


Читать дальше →
Total votes 26: ↑22 and ↓4+18
Comments18

Открытый вебинар C#: async и await

Reading time1 min
Views7.5K
Всем привет!

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


Как всегда ждём вопросы, комментарии, предложения.

Спасибо.
Total votes 19: ↑16 and ↓3+13
Comments2

Что есть в новом JupyterLab для пользователей?

Reading time4 min
Views27K
Всем привет!

Одним из основных инструментов на нашем курсе «Разработчик BigData» является Jupyter. Глянем, что его разработчики приготовили в новой итерации и что уже доступно в бета-версии.

Поехали.

Вкратце: JupyterLab готов к ежедневному использованию (установка, документация, экскурс через Binder)

JupyterLab — это интерактивная среда разработки для работы с блокнотами, кодом и данными.


Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments5

Почему подводят персонажи

Reading time7 min
Views4.1K
Всем привет!

Запускаем завтра курс «Проектирование UX/UI», что немного волнительно, т.к. второй не совсем программерский курс, да ещё и радикально отличающийся от такого же первого (Digital маркетинг). В общем ждём старта и первых отзывов от наших студентов, а пока что очередной понравившийся материал от наших преподавателей про персонажей.

Поехали.

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

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

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


Пример персонажа (Источник)
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments0

Автоматизация тестирования и Agile

Reading time3 min
Views10K
Всем привет!

Приближаемся к запуску нового нашего курса: «Автоматизатор в тестировании». Сегодня вот последний открытый урок, потом день открытых дверей и в бой.

На прошлых двух таких мероприятиях не раз задавался вопрос о связи Agile и автоматизации. Вот, нашёлся в закромах неплохой и не сильно большой материал, которым с вами и делимся.

Поехали.



Тестирование программного обеспечения, следующее принципам agile-разработки, называется Agile Тестированием (Agile Testing). Agile — итеративная методология разработки, при использовании которой требования развиваются в ходе сотрудничества между клиентом и самоорганизующимися командами и гибкого согласования с потребностями клиента.
Читать дальше →
Total votes 13: ↑11 and ↓2+9
Comments8

Открытый урок «Проектирование UX/UI: дизайн в современном мире»

Reading time1 min
Views12K
Всем доброго времени суток!

Мы провели тут в рамках нашего второго «непрограммерского» курса — «Проектирование UX\UI» открытый вебинар на выше указанную тему, где разбирали что такое «дизайн», «дизайнер» и роль всего этого в мире компании.

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


Как всегда ждём комментарии, вопросы, предложении тут или на Дне открытых дверей.
Total votes 12: ↑11 and ↓1+10
Comments0

Топ-10 трендов технологий искусственного интеллекта (ИИ) в 2018 году

Reading time7 min
Views20K
Добра!

Слушатели первого курса «Разработчик BigData» вышли на финишную прямую — сегодня начался последний месяц, где выжившие займутся боевым выпускным проектом. Соответственно, открыли и набор на этот достаточно непростой курс. Поэтому давайте рассмотрим одну интересную статью-заметку по современным трендам в ИИ, которые тесно связаны с BD, ML и прочим.

Поехали.

Искусственный интеллект находится под пристальным вниманием глав правительств и бизнес-лидеров в качестве основного средства оценки верности решений. Но что происходит в лабораториях, где открытия академических и корпоративных исследователей будут устанавливать курс развития ИИ на следующие годы? Наша собственная команда исследователей из AI Accelerator от PwC нацелилась на ведущие разработки, за которыми следует внимательно следить как бизнес-лидерам, так и технологам. Вот что они из себя представляют и почему они так важны.

Читать дальше →
Total votes 17: ↑14 and ↓3+11
Comments9

Селекторы CSS и их применение в автоматизации тестирования Программного Обеспечения

Reading time6 min
Views98K
Всем добра!

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

Поехали.

Каждый курс или статья для начинающих автоматизаторов рассказывает об удобном и универсальном средстве поиска элементов Web-страницы, как XPath. Данный вид локаторов на элемент был создан в 1999 году для указания на элементы в XML файлах. С помощью встроенных функций XPath стал очень популярным инструментом поиска элементов на Web-странице. Если HTML код вашего приложения выглядит как-то так:

…
<form class=“form_upload>
    <div>
        <div class=“row_element_3 row tile_fixed”>
            <div class=“button_cell wrapper_tile”>
                <button type=“submit” class=“button_submit wrapper_button”>Нажми меня</button>
            </div>
        </div>
    </div>
</form>
…

и вы не можете найти достойный XPath для кнопки “Нажми меня”, не стоит сразу бежать в сторону разработчика с просьбой о помощи. Есть отличная возможность воспользоваться CSS селектором, он будет выглядеть так:

.button_submit

Добро пожаловать в мир CSS.

Читать дальше →
Total votes 13: ↑11 and ↓2+9
Comments18

Открытый урок по «Введение в JSON Schema»

Reading time1 min
Views6.7K
Доброго дня!

Запускаем сегодня наш переделанный курс «Разработчик JavaScript» и вспомнили, что у нас есть ещё один открытый урок по нему же. На нём разбирали основные идеи JSON Schema, синтаксис, определяемый в спецификации, ну и для чего вообще стоит использовать эту технологию.


Если вдруг есть какие-то вопросы, то задавайте.
Total votes 23: ↑14 and ↓9+5
Comments1

Открытый вебинар «Особенности языка JavaScript»

Reading time1 min
Views5.5K
Всем бобра!

Переработали тут по заявкам слушателей программу курса по JavaScript: дописали смежные темы типа сборщиков, тестовых фреймворков плюс догнали чуток изучения подходов по ООП + SOLID, паттерны и ещё мелкие разные изменения. По этому поводу провели достаточно интересный открытый вебинар на тему «Особенности языка JavaScript», где Юрий Дворжецкий рассказывал и показывал (а ещё и спрашивал) основные отличия языка, идиомы JS.


Как всегда ждём вопросы, пожелания, тапки.
Total votes 14: ↑10 and ↓4+6
Comments0

Основные принципы C++: Правила выражений и операторов

Reading time5 min
Views19K
Бобра!

Что ж, мы плавно выходим на старт второго потока группы «Разработчик С++» и разбираем интересные материалы, которые накопились у преподавателя в свободное от работы и преподавания время. Сегодня рассмотрим (а потом и продолжим) серию материалов, где разбираются отдельные пункты С++ Core Guidelines.

Поехали.

В C++ Core Guidelines много правил, посвященных выражениям и операторам. Если быть точным, то более 50 правил посвящено объявлениям, выражениям, операторам и арифметическим выражениям.



*перевод
Информативные названия

Оптимальная длина переменных

  • Не должны быть слишком длинными (maximimNumberOfPointsInModernOlympics.) или слишком короткими (например, x, x1)
  • Длинные названия сложно печатать, короткие названия недостаточно информативны..
  • Дебажить программы с названиями от 8 до 20 символов гораздо проще
  • Гайдлайны не заставляют вас срочно менять названия переменных на имена из 9-15 или 10-16 символов. Но если вы найдете в своем коде более короткие названия, убедитесь, что они достаточно информативны.

Слишком длинные: numberOfPeopleOnTheUsOlympicTeam; numberOfSeatsInTheStadium; maximumNumberOfPointsInModernOlympics
Слишком короткие: n; np; ntmn; ns; nslsd; m; mp; max; points
В самый раз: numTeamMembers, teamMembersCount

Читать дальше →
Total votes 16: ↑14 and ↓2+12
Comments32

Как сделать ваш код в 80 раз быстрее

Reading time6 min
Views30K
Всем бобра!

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

Поехали.

PyPy способен ускорить код в 2 раза, что радует очень многих людей. Хочу поделиться короткой, личной историей, доказывающей, что PyPy способен на большее.

ДИСКЛЕЙМЕР: это не чудодейственное средство на все случаи жизни, да, сработало конкретно в этом случае, но может оказаться не таким эффективным во многих других. Однако метод все равно интересный. Более того, шаги, описанные здесь, я применял во время разработки в том же порядке, что делает статью жизненным примером оптимизации PyPy.

Я экспериментировал с эволюционными алгоритмами несколько месяцев назад: план был амбициозным — автоматически развить логику, способную контролировать (симулированный) квадрокоптер, то есть PID-регулятор (спойлер: не летает).

Читать дальше →
Total votes 32: ↑29 and ↓3+26
Comments11

Открытый урок «Диаграммы UML»

Reading time1 min
Views13K
Всем бобра!

Наш курс «Разработчик С++» потихоньку растёт и ширится: присоединился новый преподаватель с очень богатым опытом — Юрий Авраменко. И он уже провёл у нас первый открытый урок по диаграммам UML, на котором разбирались: виды диаграмм, инструменты построения схем и диаграмм, варианты представлений и прочее.


Ждём вопросы тут или на Дне открытых дверей.
Total votes 20: ↑18 and ↓2+16
Comments2

Открытый урок на тему «Аудит рекламных кампаний в Яндекс. Директе»

Reading time1 min
Views3.8K
И снова здравствуйте!

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

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

Ждём, если что, ваших вопросов, предложений, комментариев и всего остального.
Total votes 19: ↑18 and ↓1+17
Comments0

Information

Rating
47-th
Location
Россия
Works in
Registered
Activity