Pull to refresh
10
Karma
0.1
Rating
Demidov Ruslan @rd_nino

Системный администратор, разработчик

  • Posts
  • Comments

Нижний Новгород: новая роль технологического хаба для нестоличного города

Personnel ManagementIT careerIT-companies

Нижний Новгород на протяжении своей восьмисотлетней истории всегда занимал свое уникальное место, играл свою роль. Основанный в 1221 году, город являлся опорным пунктом при распространении русского влияния на новые земли. Его военное значение росло, нижегородский кремль, построенный в XVI веке, ни разу не был взят. Со временем роль города поменялась: Нижний Новгород стал центром российской и международной торговли. Нижегородская ярмарка была крупнейшей в стране, Всероссийская промышленная и художественная выставка 1896 года по значимости сопоставима и даже превосходит такие современные события, как Зимние олимпийские игры в Сочи и Чемпионат мира по футболу. С историей этой выставки связаны первый в России трамвай, первый российский серийный автомобиль, первый в России фуникулер, первая в мире гиперболоидная конструкция - башня Шухова. В советское время Нижний Новгород, ставший Горьким, занял роль крупнейшего индустриального центра. Лучшие инженерные кадры создавали автомобили ГАЗ и крылатые суда “Метеор”. 

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

Читать далее
Total votes 41: ↑41 and ↓0 +41
Views7.4K
Comments 18

News

Show more

Зачем нужны непрерывная доставка и непрерывное развертывание?

CUSTIS corporate blogIT InfrastructureDevelopment ManagementProduct ManagementDevOps

Недавно у нас на работе стихийно возник спор о том, стоит ли вводить непрерывную доставку. Не имея в виду сразу переделывать все наши процессы под непрерывную доставку, я, однако, отстаивал целесообразность такого подхода «в общем». К сожалению, после начала спора я за приемлемые 5–10 минут так и не нашел в интернете подходящего текста, доходчиво объясняющего, зачем нужна непрерывная доставка, чтобы хорошенько подкрепить свою точку зрения. Материалов о том, как наладить непрерывную доставку, очень много, а вот статей (на русском языке) о том, зачем же это нужно, недостает.

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

Читать далее
Total votes 7: ↑7 and ↓0 +7
Views2.8K
Comments 5

Эффективность — ваш враг

VDSina.ru corporate blogProject managementPersonnel ManagementPopular science
Translation

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

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

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

Попав в офис (разумеется, заполненный дымом сигарет), вы немного удивлены, что он совсем не похож на людской муравейник. На самом деле, окружающие вас люди практически ничего не делают. Рядом с офисом вашего героя его секретарша отдыхает за своим столом. Назовём её Глория. Похоже, она совсем ничем не занята. Вы в течение получаса наблюдаете, как она читает, приводит в порядок свой стол и болтает с проходящими мимо секретаршами. Они тоже не выглядят занятыми. Озадаченный тем, что Тони тратит свои деньги на бездельников, вы решаете остаться ещё на несколько часов.
Читать дальше →
Total votes 119: ↑109 and ↓10 +99
Views56.4K
Comments 69

Базовая структура HTML-документа с объяснением каждой строчки

Маклауд corporate blogWeb designWebsite developmentHTMLStudying in IT
Translation
<!DOCTYPE html>
<html lang="en" class="no-js">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width">

  <title>Unique page title - My Site</title>

  <script type="module">
    document.documentElement.classList.remove('no-js');
    document.documentElement.classList.add('js');
  </script>

  <link rel="stylesheet" href="/assets/css/styles.css">
  <link rel="stylesheet" href="/assets/css/print.css" media="print">

  <meta name="description" content="Page description">
  <meta property="og:title" content="Unique page title - My Site">
  <meta property="og:description" content="Page description">
  <meta property="og:image" content="https://www.mywebsite.com/image.jpg">
  <meta property="og:image:alt" content="Image description">
  <meta property="og:locale" content="en_GB">
  <meta property="og:type" content="website">
  <meta name="twitter:card" content="summary_large_image">
  <meta property="og:url" content="https://www.mywebsite.com/page">
  <link rel="canonical" href="https://www.mywebsite.com/page">

  <link rel="icon" href="/favicon.ico">
  <link rel="icon" href="/favicon.svg" type="image/svg+xml">
  <link rel="apple-touch-icon" href="/apple-touch-icon.png">
  <link rel="manifest" href="/my.webmanifest">
  <meta name="theme-color" content="#FF00FF">
</head>

<body>
  <!-- Content -->
  <script src="/assets/js/xy-polyfill.js" nomodule></script>
  <script src="/assets/js/script.js" type="module"></script>
</body>
</html>


Под катом — разбор каждой строчки
Читать дальше →
Total votes 50: ↑42 and ↓8 +34
Views23.7K
Comments 8

Vue.js и слоистая архитектура: вынесение бизнес-логики в сервисы

SimbirSoft corporate blogJavaScriptProgrammingООPVueJS

Когда нужно сделать код в проекте гибким и удобным, на помощь приходит разделение архитектуры на несколько слоев. Рассмотрим подробнее этот подход и альтернативы, а также поделимся рекомендациями, которые могут быть полезны как начинающим, так и опытным разработчикам Vue.js, React.js, Angular. 

В старые времена, когда JQuery только появился, а о фреймворках для серверных языков лишь читали в редких новостях, веб-приложения реализовывали целиком на серверных языках. Зачастую для этого использовали модель MVC (Model-View-Controller): контроллер (controller) принимал запросы, отвечал за бизнес-логику и модели (model) и передавал данные в представление (view), которое рисовало HTML. 

Объектно-ориентированное программирование (ООП) на тот момент только начинало формироваться, поэтому разработчики зачастую интуитивно решали, где и какой код надо писать. Таким образом, в мире разработки зародилось такое понятие, как «Божественные объекты», которые первоначально отвечали практически за всю работу отдельных частей системы. Например, если в системе была сущность «Пользователь», то разработчику следовало создать класс User и в нем писать всю логику, так или иначе связанную с пользователями. Без разбиения на какие-то ещё файлы. И если приложение было большим, то такой класс мог содержать тысячи строк кода.

Читать далее
Total votes 11: ↑9 and ↓2 +7
Views7.8K
Comments 24

Дайджест свежих материалов из мира фронтенда за последнюю неделю №466 (3 — 9 мая 2021)

Website developmentCSSJavaScriptHTML
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.

Читать дальше →
Total votes 18: ↑17 and ↓1 +16
Views7.2K
Comments 0

Fastify.js — не только самый быстрый веб-фреймворк для node.js

JavaScriptNode.JS
Последние 10 лет среди веб-фреймворков для node.js самой большой популярностью пользуется Express.js. Всем, кто с ним работал, известно, что сложные приложения на Express.js бывает сложно структурировать. Но, как говорится, привычка — вторая натура. От Express.js бывает сложно отказаться. Как, например, сложно бросить курить. Кажется, что нам непременно нужна эта бесконечная цепь middleware, и если у нас забрать возможность создавать их по любому поводу и без повода — проект остановится.

Отрадно, что сейчас, наконец, появился достойный претендент на место главного веб-фреймворка всех и вся — я имею в виду не Fastify.js, а, конечно же, Nest.js. Хотя по количественным показателям популярности, до Express.js ему очень и очень далеко.

Таблица. Показатели популярности пакетов по данным npmjs.org, github.com
Пакет Количество загрузок Количество «звезд»
1 connect 4 373 963 9 100
2 express 16 492 569 52 900
3 koa 844 877 31 100
4 nestjs 624 603 36 700
5 hapi 389 530 13 200
6 fastify 216 240 18 600
7 restify 93 665 10 100
8 polka 71 394 4 700
9 loopback 28 501 13 300
10 Adonis.js 3 825 10 100


Express.js по-прежнему работает в более чем в 2/3 веб-приложений для node.js. Более того, 2/3 наиболее популярных веб-фреймворков для node.js используют подходы Express.js. (Точнее было бы сказать, подходы библиотеки Connect.js, на которой до версии 4 базировался Express.js).

В предлагаемом сообщении обсуждаются особенности основных веб-фреймворков для node.js, и что делает Fastify.js фреймворком другого уровня, что позволяет выбрать его как фреймворк для разработки Вашего следующего проекта.
Читать дальше →
Total votes 21: ↑21 and ↓0 +21
Views6.5K
Comments 31

Полное руководство по CSS Flex + опыт использования

ITSOFT corporate blogWebsite developmentCSSBrowsers

Как и CSS Grid, Flex Box довольно сложен, потому что состоит из двух составляющих: контейнера и элементов внутри него.

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

Читать!
Total votes 19: ↑16 and ↓3 +13
Views21.4K
Comments 13

Дайджест свежих материалов из мира фронтенда за последнюю неделю №464 (19 — 25 апреля 2021)

Website developmentCSSJavaScriptHTML
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.

Читать дальше →
Total votes 26: ↑26 and ↓0 +26
Views8K
Comments 2

Открытый бета-тест новой версии Хабра

Habr corporate blogHabrWeb services testing
Много лет существовали две версии Хабра: десктопная и мобильная. Они использовали разный стек технологий, поэтому на разработку каждой новой фичи мы тратили вдвое больше времени. К тому же десктопная версия давно устарела, что добавляло ещё больше проблем. Десктопную версию писали, без преувеличения, несколько поколений разработчиков, поэтому некоторые из используемых технологий успели окончательно устареть. Последние несколько лет каждая новая фича становилась верхушкой айсберга рефакторинга и копаний в legacy-коде. В конечном счёте мы устали от этого «монстра» и решили победить его.


Читать дальше →
Total votes 128: ↑119 and ↓9 +110
Views151.7K
Comments 679

Как настроить дашборды в Azure DevOps, чтобы они приносили пользу

Project management

Если вы когда-нибудь использовали проектную аналитику, то наверняка в какой-то момент разочаровывались в этом инструменте. Многие PM-ы со временем забрасывают дашборды, потому что данные оказывается сложно применить для пользы дела. Мы тоже через это прошли и теперь хотим поделиться опытом – как превратить проектную аналитику в действительно удобный инструмент.

Рассказывать будем на примере Azure DevOps (TFS), который с этого года используют все наши команды. В разное время мы перебрали разные системы управления проектами, и в итоге поняли, что именно Azure DevOps объединяет в себе практически всё, что нужно разработчику: управление проектом, репозиторий кода, управление сборками, тестами и релизами.

Читать далее
Total votes 11: ↑11 and ↓0 +11
Views925
Comments 0

Практика создания единого шаблона проектов на базе Azure DevOps (TFS)

Development ManagementProject managementProduct ManagementDevOps

В одной из прошлых статей мы писали, как всей компанией перешли на единый трекер на базе Azure DevOps (TFS). Это позволило нам создать единый свод правил для ведения проектов. Рассказываем, как наш проектный офис разработал логику, по которой сейчас работают все наши команды.

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

Читать далее
Total votes 8: ↑8 and ↓0 +8
Views1.1K
Comments 0

Пользовательские CSS-переменные, инверсия светлоты цветов и создание тёмной темы за 5 минут

RUVDS.com corporate blogWebsite developmentCSS
Translation
Вы, наверное, уже знаете о том, что для хранения сведений об отдельных компонентах цвета можно применять пользовательские CSS-переменные. Это позволяет избавиться от необходимости повторения одних и тех же цветовых координат в стилях, описывающих цветовую тему сайта. Возможно, вы даже знаете о том, что одну и ту же переменную можно использовать для настройки нескольких компонентов цвета.


Читать дальше →
Total votes 28: ↑28 and ↓0 +28
Views9K
Comments 7

Как не надо заводить баги. Часто встречающиеся ошибки

«Ренессанс страхование» corporate blogWeb services testing
Recovery mode

Всем привет. Меня зовут Дарья и я – специалист по контролю качества программных продуктов компании «Ренессанс страхование», а проще говоря – тестировщик. «Ренессанс страхование» — не первое мое место работы тестировщиком. Я расскажу о том, как не надо делать, то есть на подробно, на примерах, распишу наиболее частые ошибки при заведении бага.

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

Читать далее
Total votes 28: ↑21 and ↓7 +14
Views10.1K
Comments 17

Микрофронтенды: разделяй и властвуй

Mail.ru Group corporate blogDelivery Club Tech corporate blogWebsite developmentJavaScriptVueJS


Всем привет! Меня зовут Аня, я фронтенд-разработчик в Delivery Club. Хочу рассказать про использование микрофронтендов. Поговорим о том, что же это за зверь такой — микрофронтенд, почему мы решили использовать этот подход в своих проектах и с какими проблемами столкнулись при внедрении.
Читать дальше →
Total votes 34: ↑31 and ↓3 +28
Views14.1K
Comments 34

Малоизвестные, но крутые атрибуты в HTML

VDSina.ru corporate blogWebsite developmentCSSHTML


Спросите случайного фронтендера, какие атрибуты HTML он использует — и услышите что-то вроде «src, href, style, class...» и прочую чепуху, которую всем ещё в младенчестве вживили на чипе агенты IETF. Между тем, стандарты веба не стоят на месте, и с каждым годом в браузерах появляются всё более крутые фичи не только для монструозного CSS, но и для обычных элементов HTML. Вы знали, что с помощью атрибутов можно пинговать* произвольный адрес, а элементы формы могут многократно переопределять её поведение? Вряд ли.
Читать дальше →
Total votes 67: ↑65 and ↓2 +63
Views25K
Comments 15

Вы неправильно используете docker-compose

ProgrammingWeb services testingDevOps
Translation

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

В любом случае, вот краткое изложение некоторых из кардинальных "грехов", которые я совершил при использовании docker-compose.

4 греха
Total votes 11: ↑10 and ↓1 +9
Views8.7K
Comments 16

Неделя фронтенда на Хабр Карьере

Хабр Карьера corporate blogHabr corporate blogWebsite developmentIT careerIT-companies

Мы, конечно, не астрологи, но решили сделать так, чтобы крутые фронтендеры нашли себе работу мечты и поэтому объявляем неделю фронтенда на Хабр Карьере!

Читать далее
Total votes 35: ↑35 and ↓0 +35
Views3.5K
Comments 0

Собеседование в Яндекс: театр абсурда :/

PythonPersonnel ManagementIT career

Привет, хабр!

В прошлой статье меня знатно разбомбили в комментариях, где-то за дело, где-то я считаю, что нет. Так или иначе, я выжил, и у меня есть чем с вами поделиться >:)

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

Как вы думаете, что делают рекрутеры, когда видят "Alexandr, NOT OPEN FOR WORK"? Правильно, пишут "Алексей, рассматриваете вариант работать в X?" Я обычно игнорирую это, но тут мне предложили попытать счастья с Яндекс.Лавкой, и я не смог пройти мимо - интересно было, смогу ли я устроиться куда-нибудь, когда введут великий российский файерволл. К тому же за последние 3 года я проходил только два интервью, и мне показалось, что я не в теме, что нынче требуется индустрии. Блин, я оказался и вправду не в теме. И вы, скорей всего, тоже - об этом и статья.

Читать далее
Total votes 664: ↑637 and ↓27 +610
Views268.1K
Comments 1253

FrontEnd разработка в Docker

Website development
Tutorial

Когда приходит новый разработчик, то перед ним встает задача запустить окружение для разработки. И до недавнего времени - это часто становилось похожим на танцы с бубном. Поставь 10 разных пакетов определенных версий, а еще окажется что твой собственный pet-проект требует другие версии или это даже может быть другой проект в рамках той же работы. Каждый раз из этой ситуации специалист выходил по своему, но основной проблемой помимо временных затрат на эту конфигурацию - оставалось, то что работоспособность от разработчика к разработчику или runner не гарантировалась.

К счастью - эта проблема решена в современном мире разработки, если не полностью, то в большей мере. Нам на выручку пришел Docker.

Read more
Total votes 9: ↑9 and ↓0 +9
Views11.9K
Comments 6

Information

Rating
1,999-th
Location
Нижний Новгород, Нижегородская обл., Россия
Date of birth
Registered
Activity