Pull to refresh
1
0
Леонид @Lion_son

User

Send message

Использование цвета при анализе и проектировании систем. Часть 1

Level of difficultyMedium
Reading time12 min
Views3.3K

Мы все живём в мире, полном красок и их многочисленных оттенков. Способность воспринимать свет и различать оттенки цветов появилась у человека эволюционно. Несмотря на то, что механизмы восприятия и обработки цвета мозгом человека до сих пор до конца не изучены, цветовосприятие не перестаёт оттого быть для человека менее важным.

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

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

Настоящая публикация ставит перед собой целью сделать шаг вперёд в этом направлении.

Поехали
Total votes 4: ↑4 and ↓0+4
Comments5

Потоки в Java: От рождения до смерти. Введение в многопоточность

Level of difficultyEasy
Reading time6 min
Views14K

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

Жизненный цикл потока - основная концепция Java, которую мы подробно рассмотрим в этой статье. Мы будем использовать краткую иллюстрированную диаграмму и фрагменты практического кода, чтобы более глубоко понять состояния потока во время его выполнения. Эта статья о создании потока - отличное начало для понимания потоков в Java.

Читать далее
Total votes 7: ↑4 and ↓3+1
Comments2

Эффективное использование Postman для тестирования RESTful API: от базовых запросов до автоматизации

Reading time7 min
Views11K

В данной статье мы рассмотрим шаг за шагом, как использовать Postman для тестирования RESTful API. Начиная с отправки простых запросов, мы перейдем к созданию коллекций для организации тестовых сценариев. Затем мы обсудим возможности автоматизации тестирования с помощью коллекций и сценариев с использованием встроенных функций Postman.

Читать далее
Total votes 5: ↑4 and ↓1+3
Comments10

За одного битого двух небитых дают: как мы переобучили ручных тестировщиков на Java-автотестеров

Reading time6 min
Views8.8K

Тестирование продукта — одна из самых важных составляющих процесса разработки в ИТ. Во время тестирования происходит проверка соответствия между реальным и ожидаемым поведением программы. ПО проходит верификацию, то есть оценку, удовлетворяют ли результаты текущего этапа разработки условиям, сформированным в начале этого этапа. Также производится валидация — проверка соответствия ПО ожиданиям и потребностям пользователя, требованиям к системе.

За счёт тестирования можно снизить стоимость продукта, потому что баги будут обнаружены до того, как компания потратит много времени и ресурсов на разработку. Кроме того, тестирование косвенно влияет на лояльность потребителей к компании и продукту, так как любой обнаруженный дефект негативно сказывается на доверии пользователей.

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

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

Читать далее
Total votes 6: ↑4 and ↓2+2
Comments2

Переходим на Go: 16 материалов для самостоятельного изучения языка

Level of difficultyEasy
Reading time5 min
Views40K

Привет! Меня зовут Владислав Попов, я автор курса «Go-разработчик» Яндекс Практикума. Когда-то я сам был студентом — хотел учиться Go, но такого курса в Практикуме не было, поступил на Python. Прошёл вводную часть — и тут стартовал желанный курс по Go. В тот же вечер оформил возврат и перепоступил. Попал в первый поток, прошёл его, и после сдачи итогового проекта мне предложили стать тестером курса «Продвинутый Go-разработчик».

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

За время работы с Go я понял, что сам язык не очень сложный и подходит даже в качестве первого, но нужно выучить синтаксис и погрузиться в некоторые особенности, которые отличают Go от других языков: например, интерфейсы и особенности встраивания. А ещё важно на старте хорошо знать Git и ориентироваться в работе SQL (причём любого).

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

Читать далее
Total votes 19: ↑15 and ↓4+11
Comments12

Работа с контейнерами в Minikube

Reading time4 min
Views6.4K

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

В этой статье мы рассмотрим использование minikube для работы с контейнерами. Поговорим о том, чем Minikube отличается от «большого» Kubernetes. Но начнем мы с процесса установки Minikube.

 

Читать далее
Total votes 13: ↑9 and ↓4+5
Comments6

Ansible: 30 самых важных модулей для DevOps-профессионалов (часть 1)

Reading time6 min
Views21K

Модули – это дискретные единицы кода, которые можно запускать с помощью командной строки или с помощью плейбука для того, чтобы вносить определенные изменения в целевой узел или собирать с него информацию. Ansible реализует каждый модуль на удалённом целевом узле, а также собирает ответные значения. Модули Ansible также известны как плагины задач или библиотечные плагины. 

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

В этой части мы рассмотрим модули проверки подключения хоста, а также целевого узла (модуль ping), модуль, который может извлекать информацию с целевого узла (модуль setup), модули управления существующим пакетом и установки новых пакетов (yum, apt, package, pip и npm модули), а также модуль запуска базовых команд и скриптов на целевых узлах (raw, command, shell и script модули).

Итак, начнём..

Читать далее
Total votes 29: ↑18 and ↓11+7
Comments5

Kubernetes the hard way

Reading time36 min
Views24K

Всем привет. Меня зовут Добрый Кот Telegram.

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

Вошли и вышли, приключение на 20 минут)

От коллектива FR-Solutions и при поддержке @irbgeo Telegram : Продолжаем серию статей о K8S.

Начать приключение
Total votes 34: ↑34 and ↓0+34
Comments16

Можно ли стать программистом (в возрасте)?

Reading time4 min
Views27K

Начав с поиска в интернете, удивился, что программистом в возрасте хотят стать с переодичностью в 5 лет, может это как-то связано с циклом разработки, но оставим тему для дальнейшего исследования!

Здравствуйте, меня зовут Олег и я программист! Пусть будет таким начало исповеди в клубе возрастных программистов.

Для экономии времени читателя: да, можно, но есть много "если" и об этом дальнейший текст.

Сейчас мне за 50, но еще 2 года назад о современном программировании я только знал то, что в компании есть отдел разработки и я им плачу деньги. Конечно не честно говорить, что с компьютерами я не знаком. В IT работаю с далекого 97 года, именно тогда я еще что-то писал на Delphi. Но с тех пор прошел путь от инженера, до руководителя представительства крупной софтверной компании, целиком окунувшись в проблемы "бузинеса".

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

В чем разница? Простые вопросы дадут ответ: есть ли документация? как построена отказоустойчивость (тут про девятки лучше не спрашивать, чтоб не унизить коллег), есть ли инструкция пользования системой, отчуждаем ли продукт. Да, это вопросы от "бизнеса", но они как раз и помогают оценить зрелость.

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

Читать далее
Total votes 31: ↑22 and ↓9+13
Comments64

Релизный цикл ПО для самых маленьких

Reading time7 min
Views14K

В продолжение нашей серии для начинающих ИТ-шников о базовых идеях современной коммерческой разработки, поговорим о моделях релизов. Это очень обширная тема, но мы пройдемся по верхам и исключительно с позиции разработчика. Мы не будем брать экзотические случаи, когда релизы относят на флешке, закрытой в специальном контейнере, или когда релиз ровно один - в конце разработки - и на нем все заканчивается. Поговорим о популярном CI/CD, какую роль тут играет Kubernetes и почему фичи не сразу оказываются в проде.

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

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments0

Мой путь в ИТ или как и куда расти тестировщику

Reading time4 min
Views8.1K

Я начал свой трудовой путь в ИТ когда это еще не было мейнстримом и разговоры о том что в ИТ хорошо платят не ходили. В целом у меня просто душа лежала к подобным занятиям. И поэтому я пошел учиться в колледж на ИТ специальность. Во время 3 курса я попал на практику в одну компанию. Компания была максимально. ИТ-шной и меня взяли в ИТ-отдел(по сути отдел тех поддержки) мальчиком на побегушках или как сейчас принято называть эникеем.

Читать далее
Total votes 9: ↑2 and ↓7-5
Comments6

Основы контейнеризации (обзор Docker и Podman)

Reading time16 min
Views126K

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

К 2022 году о контейнеризации не слышал только ленивый. Большинство специалистов, так или иначе имеющих отношение к ИТ, хотя бы раз в жизни запускали программное обеспечение в контейнерах. Однако так ли эта технология проста и понятна? Давайте разбираться вместе!

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

Читать далее
Total votes 26: ↑26 and ↓0+26
Comments22

Попробуй пройди за 4 часа тестовое задание в канадскую компанию

Reading time18 min
Views36K

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

Читать далее
Total votes 37: ↑28 and ↓9+19
Comments72

Как я создавал homelab для учебы на DevOps-инженера

Reading time4 min
Views20K

DevOps-практики, как известно, требуют освоения длинного ряда инструментов, и если с каким-нибудь git можно экспериментировать практически на любой машине, то Nexus или Jenkins надо ставить на сервер. Они требовательны к ресурсам, и бесплатным t2.micro на AWS не обойтись. Конечно, можно получить 3 month trial от Google Cloud, но он потребуется позже для игр с managed Kubernetes. Так что я решил сделать из своего десктопа homelab. Дальше о том, что я сделал, с какими проблемами столкнулся и как их решил.

Читать далее
Total votes 14: ↑10 and ↓4+6
Comments29

Как строятся оптоволоконные сети

Reading time6 min
Views78K
Всем привет! Меня зовут Дмитрий, я занимаюсь проектированием и строительством волоконно-оптических линий связи (ВОЛС) в DataLine. Сегодня расскажу, как мы создаем оптические трассы для наших клиентов и как устраняем аварии.


Монтажник укладывает волокна двух кабелей в оптической муфте.
Читать дальше →
Total votes 53: ↑52 and ↓1+51
Comments40

Пожалуйста, прекратите писать shell-скрипты

Reading time5 min
Views79K

Когда вы автоматизируете какую-либо задачу, например, упаковываете свое приложение для Docker, то часто сталкиваетесь с написанием shell-скриптов. У вас может быть bash-скрипт для управления процессом упаковки и другой скрипт в качестве точки входа в контейнер. По мере возрастающей сложности при упаковке меняется и ваш shell-скрипт.

Все работает хорошо.

И вот однажды shell-скрипт совершает что-то совсем неправильное.

Тогда вы осознаете свою ошибку: bash, и вообще shell-скрипты, в основном, по умолчанию не работают. Если с самого начала не проявить особую осторожность, любой shell-скрипт достигнув определенного уровня сложности почти гарантированно будет глючным... а доработка функций корректности будет довольно затруднительна.

Читать далее
Total votes 116: ↑92 and ↓24+68
Comments251

График платежей с напоминалкой в Telegram с помощью Google Sheets & JavaScript

Reading time4 min
Views15K

Меня заинтересовал челлендж: в течение 26 недель откладывать N+100 руб, где N - сумма, вложенная на прошлой неделе. Я решил откладывать деньги по средам, составил такую табличку в Google Sheets

Читать далее
Total votes 18: ↑18 and ↓0+18
Comments7

Визуализация покрытия автотестами

Reading time17 min
Views30K
Современные отчеты покрытия в ряде случаев довольно бесполезны, а способы их измерения подходят в основном лишь разработчикам. Всегда можно узнать процент покрытия или просмотреть код, который не был задействован в ходе выполнения тестов, но что делать, если хочется наглядности, простоты и автоматизации?



Под катом — видео и расшифровка доклада Артема Ерошенко из Qameta Software с конференции Heisenbug. Он представил несколько разработанных простых и элегантных решений, которые помогают команде Яндекс.Вертикалей оценивать покрытие тестов, написанных автоматизаторами тестирования. Артем расскажет, как можно быстро узнавать, что покрыто, как покрыто, какие тесты прошли, и мгновенно смотреть наглядные отчеты.

Артем, рассказывай!
Total votes 33: ↑33 and ↓0+33
Comments22

Information

Rating
Does not participate
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity