Сергей Сергеев - Системы контроля версийYandexВ процессе работы над кодом мы можем допускать ошибки, менять своё мнение, пробовать различные гипотезы. Работая над большими проектами, мы не всегда можем контролировать весь наш код и уследить за его развитием — для этого нам нужны системы контроля версий, о которых и рассказано в данной лекции.
Развёртывание приложений Docker в контейнерах Virtuozzo -- Павел ТихомировOpenVZРазвёртывание приложений Docker в контейнерах Virtuozzo
Павел Тихомиров
https://events.yandex.ru/events/yagosti/19-september-2015-linux/
"Electron. How the most modern framework works" Oleksii HolubievFwdaysHave you ever wondered why all the top companies are developing their desktop versions of applications? Spotify, Teams, Skype, WhatsApp, VS Code, etc. All these modern programs use one framework and that is Electron. But why? What's in it that WPF or JavaFX doesn't have? A small spoiler - JavaScript. But this is not the only thing.
So in this speech we:
1. Let's remember the history of origin and understand who really maintains this product
2. Let's look under the hood and see how it really works
3. Let's talk about why VS Code has so many processes
4. Let's deal with the main killer features
5. Let's evaluate the framework cons
6. Let's meet the community
This topic is suitable for everyone who is already familiar with JS and is interested in desktop applications.
Расчет и документирование технологических процессов на базе WinCC OAPavel TreshnikovРасчет и документирование технологических процессов на базе WinCC OA
Siemens oil and gas 2016 WinCC OADMC, Inc.John Sullivan from DMC presented on WinCC Open Architecture (OA) and how it can be applied to oil and gas projects. Key features of WinCC OA include its distributed architecture, scalability, ability to auto-generate configurations for new sites, remote monitoring capabilities including GIS viewing, integrated data collection, custom configuration tools, support for multi-user development, and ultralight web and mobile clients. Case studies were presented on how WinCC OA has been used for distributed generator management and how its features translate well to applications in upstream, midstream, and downstream oil and gas.
Working with .NET ThreadsPavel TreshnikovПрезентация к докладу - работа с потоками в .net
* Основе работы с потоками
* Средства блокирующейсинхронизации
* Неблокирующая синхронизация
* Асинхронная модель программирования
* Пул потоков
* Класс BackGroundWorker
* Задачи
* Модель поставщик-потребитель
* Блокировка с двойной проверкой
Разработка приложений работы с данными при помощи WPFPavel Treshnikov==== ИСХОДНЫЙ КОД ==== https://www.dropbox.com/s/651v48bqw0hexke/SmsWpfDataApplicationDemo.rar?v=0mcn
Процессы, практики, инструменты разработки программного обеспеченияPavel TreshnikovВ презентации приведены слайды с внутреннего семинара, где я рассказывал о процессах, практиках и инструментах, которые мы используем в работе.
Типовая сборка и деплой продуктов в Positive TechnologiesPositive Hack Days1. Проблемы в построении CI процессов в компании
2. Структура типовой сборки
3. Пример реализации типовой сборки
4. Плюсы и минусы от использования типовой сборки
Развёртывание приложений Docker в контейнерах Virtuozzo -- Павел ТихомировOpenVZРазвёртывание приложений Docker в контейнерах Virtuozzo
Павел Тихомиров
https://events.yandex.ru/events/yagosti/19-september-2015-linux/
"Electron. How the most modern framework works" Oleksii HolubievFwdaysHave you ever wondered why all the top companies are developing their desktop versions of applications? Spotify, Teams, Skype, WhatsApp, VS Code, etc. All these modern programs use one framework and that is Electron. But why? What's in it that WPF or JavaFX doesn't have? A small spoiler - JavaScript. But this is not the only thing.
So in this speech we:
1. Let's remember the history of origin and understand who really maintains this product
2. Let's look under the hood and see how it really works
3. Let's talk about why VS Code has so many processes
4. Let's deal with the main killer features
5. Let's evaluate the framework cons
6. Let's meet the community
This topic is suitable for everyone who is already familiar with JS and is interested in desktop applications.
Расчет и документирование технологических процессов на базе WinCC OAPavel TreshnikovРасчет и документирование технологических процессов на базе WinCC OA
Siemens oil and gas 2016 WinCC OADMC, Inc.John Sullivan from DMC presented on WinCC Open Architecture (OA) and how it can be applied to oil and gas projects. Key features of WinCC OA include its distributed architecture, scalability, ability to auto-generate configurations for new sites, remote monitoring capabilities including GIS viewing, integrated data collection, custom configuration tools, support for multi-user development, and ultralight web and mobile clients. Case studies were presented on how WinCC OA has been used for distributed generator management and how its features translate well to applications in upstream, midstream, and downstream oil and gas.
Working with .NET ThreadsPavel TreshnikovПрезентация к докладу - работа с потоками в .net
* Основе работы с потоками
* Средства блокирующейсинхронизации
* Неблокирующая синхронизация
* Асинхронная модель программирования
* Пул потоков
* Класс BackGroundWorker
* Задачи
* Модель поставщик-потребитель
* Блокировка с двойной проверкой
Разработка приложений работы с данными при помощи WPFPavel Treshnikov==== ИСХОДНЫЙ КОД ==== https://www.dropbox.com/s/651v48bqw0hexke/SmsWpfDataApplicationDemo.rar?v=0mcn
Процессы, практики, инструменты разработки программного обеспеченияPavel TreshnikovВ презентации приведены слайды с внутреннего семинара, где я рассказывал о процессах, практиках и инструментах, которые мы используем в работе.
Типовая сборка и деплой продуктов в Positive TechnologiesPositive Hack Days1. Проблемы в построении CI процессов в компании
2. Структура типовой сборки
3. Пример реализации типовой сборки
4. Плюсы и минусы от использования типовой сборки
DevOps и системы управления конфигурацией. SECON 2015Ivan EvtukhovichЧто такое DevOps, зачем он нужен, что включается в это понятие. Что такое Continuous Delivery, системы управления конфигурацией, сравнение Chef и Ansible.
Александр Шаповал «Контейнеры Windows в Microsoft Azure и on-premise»SpbDotNet CommunityАлександр Шаповал «Контейнеры Windows в Microsoft Azure и on-premise»
NetWrix SQL Server Change Reporter. Обзор программы для аудита SQL ServerNetwrix Россия/СНГhttp://www.netwrix.com/ru/sql_server_audit_change_reporter_freeware.html скачать программу
Конфигурационное управление и управление изменениями с IBM Rational ClearCase...Александр ШамрайПрактика и технология внедрения процесса конфигурационного управления и управления изменениями с применением IBM Rational ClearCase и ClearQuest
Web-конференции в частном облаке предприятия (c Cisco Webex Meetings Server)Cisco Russia Web-конференции в частном облаке предприятия (c Cisco Webex Meetings Server)
Database automated deployment and versioning ...for smart peopleAlexey DiyanThere are a lot of tools which allows us automate deployment process for databases.
Those tools could be divided into two big groups:
#1. Tools that uses general purpose language (Ruby, C#, Java, Python) for writing migration scripts.
#2. Tools that uses SQL language for writing migration scripts.
First group of tools gives for developers productive gain but leaves database administrator completely out of development process which is really bad idea.
Second set of tools requires a lot of additional work - every single change should be written as separate database patch. This slows down our work => make it more expensive.
Oblivious solution is to create the third set of tools... or at least just one which would be friendly to both DBAs and DEVs.
What about auditors? They should be happy too!
«Механизмы обновления платформы и окружений пользователей в Jelastic»Nata_ChurdaДмитрий Лазаренко, Директор R&D, Jelastic
Выступление на hpc4.itmozg.ru (25 апреля 2013, Санкт-Петербург)
Легкий клиент Docsvision 5DocsvisionЛегкий клиент Docsvision позволяет выполнять ключевые сценарии работы пользователя Docsvision без установки какого-либо программного обеспечения на клиентское рабочее место – достаточно любого интернет-браузера: Microsoft Internet Explorer, Google Chrome, Apple Safari. Доступ возможен с компьютера или мобильного устройства (планшета, смартфона) под управлением любой операционной системы, Microsoft Windows (включая Windows RT), Linux, Mac OS X.
Netwrix sql server change reporter обзор программы для аудита sql serverNetwrix Россия/СНГhttp://www.netwrix.com/ru/sql_server_audit_change_reporter_freeware.html Скачать программу
В презентации рассматриваются возможности решения NetWrix для аудита изменений конфигурации и содержимого баз данных SQL Server. Подробно рассмотрено то, как настроить программу. Продемонстрирована работа базовой (бесплатной) версии программы.
4. Определение VCS
Система управления версиями (от англ. Version Control System, VCS или Revision
Control System) — программное обеспечение для облегчения работы с
изменяющейся информацией. Система управления версиями позволяет хранить
несколько версий одного и того же документа, при необходимости возвращаться
к более ранним версиям, определять, кто и когда сделал то или иное
изменение, и многое другое.
5. Какие задачи решает VCS
• Архивация и восстановление – ведется история изменения файлов с
возможностью обновления до указанного состояния
• Ведение истории – при каждом изменении пользователи вносят комментарии,
где описывают для чего были внесены изменения
• Создание веток (альтернативные реализации) – VCS позволяет создавать разные
варианты одного документа, т. н. ветки, с общей историей изменений до точки
ветвления и с разными — после неё.
12. Работа с ветками
Делать
мелкие
исправления
в
проекте
можно
путём
непосредственной правки рабочей копии и последующей фиксацией
изменений прямо в главной ветви (стволе) на сервере.
Однако при выполнении сколько-нибудь значительных по объёму
работ такой порядок становится неудобным: отсутствие фиксации
промежуточных изменений на сервере не позволяет работать над
чем-либо в групповом режиме, кроме того, повышается риск потери
изменений при локальных авариях и теряется возможность анализа и
возврата к предыдущим вариантам кода в пределах данной работы.
Поэтому для таких изменений обычной практикой является создание
ветвей (branch), то есть «отпочковывания» от ствола в какой-то версии
нового варианта проекта или его части, разработка в котором ведётся
параллельно с изменениями в основной версии. Ветвь создаётся
специальной командой.
21. Ежедневный цикл работы с VCS
• Обновление рабочей копии
По мере внесения изменений в основную версию проекта рабочая копия на компьютере
разработчика стареет: расхождение её с основной версией проекта увеличивается. Это
повышает риск возникновения конфликтных изменений. Поэтому удобно поддерживать
рабочую копию в состоянии, максимально близком к текущей основной версии, для чего
разработчик выполняет операцию обновления рабочей копии насколько возможно часто.
• Модификация проекта
Разработчик модифицирует проект, изменяя входящие в него файлы в рабочей копии в
соответствии с проектным заданием. Эта работа производится локально и не требует
обращений к серверу VCS.
• Фиксация изменений в локальном репозитории
Завершив очередной этап работы над заданием, разработчик фиксирует (commit) свои
изменения в локальном репозитории.
• Отправка изменений в центральный репозиторий
Для того чтобы выполненные изменения стали доступны другим разработчикам необходимо
произвести синхронизацию локального и центрального репозитория – отправить изменения из
локального репозитория в центральный.
22. Подготовка к практике
• Установлен Tortoise Hg
• Создана переменная среды «hgencoding=utf-8»
• Установлена WinCC OA
• Установлен браузер Chrome
• Установлен редактор Sublime
23. Практика
Командная разработка приложения «Калькулятор»
Задачи:
• Клонировать репозиторий
• Добавить в проект файл для реализации функции
• Sum(a,b); Mult(a,b); Sub(a,b); Div(a,b); Power3(a); Power4(a);
• Получить изменения из центрального репозитория
• Обновить локальный репозиторий до последней
версии
• Залить свои изменения в центральны репозиторий
• Моделирование и разрешение конфликтов
• Создание ветки, слияние веток
24. Регламент работы с VCS
• Выполняем частые commit
• Каждый commit сопровождаем подробным
описанием изменений
• После любого commit код в главной ветке должен
оставаться в рабочем состояние
• При необходимости длительной разработки нового
функционала – «уходим в ветку»
25. Материалы
Статьи Джоэла Спольски
• Основы Mercurial - http://habrahabr.ru/post/108658/
• Привыкаем работать в команде - http://habrahabr.ru/post/108904/
• Исправляем ошибки - http://habrahabr.ru/post/109074/
• Процесс слияния - http://habrahabr.ru/blogs/development_tools/109203/
• Архитектура репозиториев - http://habrahabr.ru/post/109428/
Системы контроля версий, статьи команды Yandex
• http://tech.yandex.ru/education/shri/simf-2013/talks/671/
26. Спасибо за внимание
ГК СМС-Автоматизация
Презентацию подготовил Трешников П.В.
email: treshnikov@gmail.com