Как стать автором
Обновить
18
0
Ярушин Никита @Nikobraz

DevOps, СисАдмин, специалист по ИБ

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

Юнит-тесты на Python: Быстрый старт

Время на прочтение4 мин
Количество просмотров113K
Перевод статьи подготовлен специально для студентов курса «Python QA Engineer».




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

В этой статье я продемонстрирую основную идею юнит-тестирования на одном классе. На практике вам придется писать множество тестовых случаев, добавлять их в тестовый набор и запускать все вместе. Управление тест-кейсами мы рассмотрим в следующей статье.
Читать дальше →
Всего голосов 11: ↑9 и ↓2+10
Комментарии5

Ёлочка в командной строке

Время на прочтение4 мин
Количество просмотров8.9K
Скоро Новый Год, думать о серьёзной работе уже не хочется.

Все стараются что-нибудь украсить к празднику: дом, офис, рабочее место… Давайте и мы что-нибудь украсим! Например, приглашение командной строки. В какой-то мере командная строка – тоже рабочее место.

В некоторых дистрибутивах она уже «украшена»:



В других – она серая и неприметная:



А мы можем сделать, например, вот так:



Конечно, на вкус и цвет все фломастеры разные. Если подобная раскраска кажется вам аляповатой и неуместной, то знайте, что данная точка зрения имеет полное право на жизнь. А если вам тоже хочется добавить немного новогоднего настроения, читайте далее небольшую новогоднюю статью от Cloud4Y.
Читать дальше →
Всего голосов 9: ↑5 и ↓4+2
Комментарии12

Как собирать проекты в Jenkins, если нужно много разных окружений

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

image


На Хабре много статей о Jenkins, но мало где описывается пример работы Jenkins и докер агентов. Все популярные инструменты сборки проектов типа Drone.io, Bitbucket Pipeline, GitLab, GitHub actions и другие, могут собирать все в контейнерах. Но как же Jenkins?


На сегодняшний день есть решение проблемы: Jenkins 2 замечательно умеет работать с Docker агентами. В статье я хочу поделиться опытом и показать, как вы можете это сделать сами.

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

Шпаргалка по форматам файлов с данными в python

Время на прочтение3 мин
Количество просмотров25K
Python понимает все популярные форматы файлов. Кроме того, у каждой библиотеки есть свой, «теплый ламповый», формат. Синтаксис, разумеется, у каждого формата сугубо индивидуален. Я собрал все функции для работы с файлами разных форматов на один лист A4, с приложением в виде примера использования в jupyter notebook.


Читать дальше →
Всего голосов 13: ↑10 и ↓3+9
Комментарии6

«Шакал»: сжимаем фронтенд

Время на прочтение5 мин
Количество просмотров21K
Привет! Я — Ваня, лид платформенной команды в Тинькофф Бизнес.

Мое любимое занятие — открывать вкладку DevTools и проверять, сколько весят артефакты сайта. В этой статье расскажу, как мы сократили вес приложения на 30% силами платформенной фронтенд-команды за один день без изменения кода сайта. Никаких хитростей и регистраций — только nginx, docker и node.js (опционально).


Читать дальше →
Всего голосов 63: ↑59 и ↓4+55
Комментарии36

Проходим челлендж от Callum Macrae на 100%

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

Предлагаю попробовать решить 10 regex тестов от Callum Macrae. В отличии от моего предыдущего разбора челленджа, здесь нет откровенно простых и даже средних задач. Как говорится — только regex, только хардкор.


Так как челлендж довольно сложный, не обязательно следовать всем правилам как я, любое прохождение теста на 100% — означает что вы супер-профессионал. Welcome!

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


Поэтому выкладываю ещё раз, с подробным переводом, объяснением и всеми полагающимися плюшками.

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

Проверяйте качество, не отходя от кассы

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


Чем доступнее средства производства, тем острее проблема подделок. А уж если продукт массовый и легко подделываемый, то волна контрафакта практически гарантирована. Для борьбы с этой напастью мы — Центр развития перспективных технологий — разрабатываем систему маркировки и прослеживания товаров. Она получила название Честный ЗНАК. Производитель наносит на каждую единицу своей продукции уникальный код DataMatrix, а покупатели могут по этому коду посмотреть, настоящий ли перед ним товар, кто его произвёл и как он попал на прилавок.

Этим вводным постом в нашем блоге мы хотим познакомить вас с системой и принципами её работы, а в следующих статьях подробнее опишем техническое устройство и особенности разработки.
Читать дальше →
Всего голосов 41: ↑23 и ↓18+5
Комментарии102

Автоматизированное тестирование с Pytest

Время на прочтение7 мин
Количество просмотров20K
Перевод статьи подготовлен специально для студентов курса «Python QA Engineer».




Мы живем в эпоху, когда программное обеспечение очень быстро отправляется на рынок. Из-за этого процесс разработки становится очень стрессовым. Высокие темпы внедрения ПО и быстрая доставка выглядят как хорошая составляющая бизнес-модели, однако здесь возникает вопрос о том, как поставлять программное обеспечение надлежащего качества.
Читать дальше →
Всего голосов 10: ↑8 и ↓2+8
Комментарии2

6 самых распространённых ошибок разработчиков при написании HTML и CSS

Время на прочтение3 мин
Количество просмотров20K
Привет, Хабр! Представляю вашему вниманию перевод статьи «The 6 most common mistakes developers when writing HTML and CSS» автора Stas Melnikov.

Использование атрибута placeholder вместо элемента label


Часто разработчики используют атрибут placeholder вместо элемента label. Но в этом случае пользователи скринридера (программы чтения с экрана) не могут заполнять поля, потому что скринридер не может прочитать текст из атрибута placeholder.

<input type="email" placeholder="Enter your email">

Поэтому я рекомендую использовать элемент label для поля имени и атрибут placeholder для примера данных, которые пользователь должен заполнить.

<label>
  <span>Enter your email</span>
  <input type="email" placeholder="e.g. example@gmail.com">
</label>

Использование элемента img для разметки декоративной графики


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

<a href="https://twitter.com" class="social">
  <img class="social__icon" src="twitter.svg" alt>
  <span class="social__name">Twitter</span>
</a>

Но иконка социальной сети — это декоративная иконка, которая помогает пользователям быстрее понять смысл элемента, не читая текст. Если мы удаляем значок, мы не теряем значение элемента, поэтому мы можем использовать для него свойство background-image.
Читать дальше →
Всего голосов 17: ↑16 и ↓1+20
Комментарии13

Django vue generator

Время на прочтение1 мин
Количество просмотров5.2K
Как подружить проект на rest framework с vue? Можно создать в каталоге с django проектом проект на vue с помощью vue-cli. Перейдя в него и набрав yarn build, на выходите получим в каталоге dist файлы index.html и каталоги css и js. Ага, css и js можно положить в static, а из index.html сделать шаблон.
Читать дальше →
Всего голосов 5: ↑2 и ↓3+1
Комментарии0

Реактивные ранцы в культуре: Кино

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

9 декабря 1965 года в Токио состоялась премьера кинофильма про Джеймса Бонда «Шаровая молния». Впервые на экранах в художественном кино был показан реактивный ранец. Шон Коннери сам не осилил управление аппаратом и вместо него летал дублер — Билл Сьютор.

Напомню, что первую в мире заявку на патент ракетного ранца подал российский инженер в 1919 году, первое упоминание в научно-фантастическом рассказе было в 1928 году, первый рабочий образец взлетел в воздух вместе с человеком в 1961 году.

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

А в каком фильме вы впервые увидели ракетный ранец?
(Я, вроде бы, в «Ракетчике».)
Всего голосов 7: ↑5 и ↓2+8
Комментарии26

Front-end додзё: проекты для тренировки навыков разработчика (5 новых + 43 старых)

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

1. Клон Notion


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

image

www.notion.so

Чему вы научитесь, создавая клон Notion:

  • HTML Drag and drop API. Пользователь может «схватить мышкой» draggable элемент и поместить его в droppable зону.
  • Как синхронизировать в режиме реального времени данные между компьютером и смартфоном.
  • Мы позволяем пользователям создавать, читать, обновлять и удалять записи, тем самым мы тренируем CRUD-навыки.

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

Y-метод — действительно простой способ собрать кубик Рубика

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

Введение


В статье рассматривается «Y-метод» сборки кубика Рубика — его легко понять и запомнить. Он основан всего на одной последовательности, которая называется «Y-движение». Поняв этот алгоритм, вы навряд ли забудете как собрать кубик самостоятельно.
Читать дальше →
Всего голосов 86: ↑85 и ↓1+116
Комментарии78

Паттерны в AngularJS

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

Краткий обзор


Один из лучших способов изучить, что то новое, это увидеть, как в нем используются уже знакомые нам вещи. Эта статья не намерена ознакомить читателей с проектированием или шаблонами проектирования. Она предлагает базовое понимание концепций ООП, шаблонов проектирования и архитектурных шаблонов. Цель статьи описать, как различные конструкции программного обеспечения и архитектурные шаблоны используются в AngularJS и написанных на нем SPA.

Введение


Статья начинается с краткого обзора фреймворка AngularJS. Обзор объясняет основные компоненты AngularJS: directives, filters, controllers, services, scope. Во втором разделе перечислены и описаны различные конструкции и архитектурные шаблоны, которые реализованы внутри фреймворка. Шаблоны сгруппированы по компонентам AngularJS, в которых они используются. Если некоторые шаблоны используются в нескольких компонентах, это будет указано.
Последний раздел включает несколько архитектурных шаблонов, которые обычно используются в SPA построенных на AngularJS.
Читать дальше →
Всего голосов 35: ↑30 и ↓5+25
Комментарии11

Подробно о внутренней кухне AngularJS

Время на прочтение9 мин
Количество просмотров48K
У фреймворка AngularJS есть несколько интересных решений в коде. Сегодня мы рассмотрим два из них – как работают области видимости и директивы.

Первое, чему обучают всех в AngularJS – директивы должны взаимодействовать с DOM. А больше всего новичка запутывает процесс взаимодействия между областями видимости, директивами и контроллерами. В этой статье мы рассмотрим подробности работы областей видимости и жизненный цикл Angular-приложения.

Если в следующей картинке вам что-то непонятно – эта статья для вас.

image

(В статье рассматривается AngularJS 1.3.0)
Читать дальше →
Всего голосов 38: ↑33 и ↓5+28
Комментарии4

Удивительный Angular

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

Awesome Angular



От переводчиков


Всем привет, с вами Максим Иванов и Дмитрий Сергиенков, и сегодня мы поговорим о новостях в мире Angular. Мы подготовили для вас наиболее интересные материалы и отобрали список вопросов, который вам должен понравиться. Отметим только, что если вы будете ждать от этой статьи ответа на вопрос "Чем Angular лучше других технологий?", то придется вас огорчить, у нас не будет ответа на него. Почему? Как правило, все мнения вида "Технология X лучше технологии Y" почти всегда не более, чем отражение точки зрения высказывающегося. Однако для тех, кто только начинает изучать этот фреймворк, мы постараемся объяснить, что дает вам эта технология и какую пользу она приносит. Также не проходите мимо и ответьте на опрос, самые популярные ответы будут отправлены Игорю Минару (ведущий разработчик команды Angular). Ну что же, приступим.

Читать дальше →
Всего голосов 47: ↑45 и ↓2+43
Комментарии59

jQuery для JavaScript-программистов

Время на прочтение12 мин
Количество просмотров70K
Примечание: ниже расположен перевод статьи «jQuery for JavaScript programmers», в которой автор высказывает свое мнение об этой библиотеке, ориентируясь, в первую очередь, на продвинутых программистов, и приводит несколько десятков примеров ее использования.

Когда jQuery увидела свет в январе 2006, я подумал: «очередная красивая игрушка». Выбор CSS-селекторов в качестве базиса было, конечно, изящной идеей (подробнее о ней в моей заметке getElementsBySelector), но использование цепочек преобразований выглядело немного замысловато, и сама библиотека, по-видимому, не покрывала всех возможных случаев. Я расценивал тогда jQuery только как временное и проходящее решение.

Только несколько месяцев спустя понял я, насколько же ошибался по отношению к ней. jQuery является просто произведением инженерного искусства. Она умело покрывает достаточно широкой диапазон повседневных функций и предоставляет при этом удобный API для расширений, с помощью которых можно добавить любую другую функциональность. Абстрактность в ней заложена на уровне ядра — речь идет о выборе DOM-элементов — и она извлекает из него максимум пользы. И что важнее всего, использование этой библиотеки подразумевает следование хорошему стилю в программировании и хорошо сочетается с другими частями JavaScript-кода.

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

Читать дальше →
Всего голосов 47: ↑46 и ↓1+45
Комментарии121

jQuery для начинающих

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

jQuery — это замечательный JavaScript Framework, который подкупает своей простотой в понимании и удобством в использовании. Но изучение надо с чего-то начинать, и лично моё мнение — лучше всего начинать с наглядных примеров, и они далее…

Читать дальше →
Всего голосов 251: ↑230 и ↓21+209
Комментарии83

Админка за 5 минут. Фронтэнд — react-admin, бэкэнд — Flask-RESTful

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


Если нужно на коленке получить быстро админку, где фронтендом будет react-admin, а бэкендом Flask-RESTful api, то ниже минимальный код в несколько десятков строк, чтобы это реализовать.
Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Комментарии41

Внутреннее устройство Git: хранение данных и merge

Время на прочтение9 мин
Количество просмотров87K
В процессе перехода с SVN на Git мы столкнулись с необходимостью переписывания наших внутренних инструментов, связанных с развёртыванием кода, которые ориентировались на существование линейной истории правок (и разработку в trunk). На Хабре уже публиковались возможные решения этой проблемы через Git-SVN, но мы пошли другим путём. Нам нужна поддержка таких возможностей Git, как branching и merge, поэтому мы решили разобраться в основах, как же работает Git и каким способом должна осуществляться интеграция с ним.
Читать дальше →
Всего голосов 77: ↑77 и ↓0+77
Комментарии10

Информация

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