Pull to refresh
4
0
Send message

Построение графа покрытия UI-тестами бизнес-логики на основе VisualFSM

Level of difficultyEasy
Reading time6 min
Views1.8K

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

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

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

52 вопроса, которые вы должны задать на собеседовании

Reading time4 min
Views74K
Вы, наверное, уже знаете, что интервью — это не просто очередной этап при устройстве на работу, это также ваша возможность разобраться, подходит ли вам эта работа. Для этого важно задать некоторые вопросы. Что вы хотите знать об этой должности? О компании? О подразделении? О команде? О корпоративной культуре?



Задавать вопросы бывает сложно. Мы это знаем. Для того, чтобы упростить вам это задание, мы приводим список ключевых вопросов для интервью. Мы определённо не рекомендуем задавать их все. Пожалейте рекрутера!
Читать дальше →
Total votes 26: ↑24 and ↓2+22
Comments13

Когда пишешь приложения для себя

Level of difficultyEasy
Reading time12 min
Views28K

require 'glimmer-dsl-libui'
include Glimmer
window('hello world').show

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

А как насчёт написать для своей семьи мобильное приложение? Это уже новый уровень.
Читать дальше →
Total votes 79: ↑77 and ↓2+75
Comments7

Задача «Получить значение у N url из списка» с собеседования на Go

Level of difficultyEasy
Reading time7 min
Views5.7K

На данный момент нахожусь в активном поиске нового проекта, поэтому активно хожу на собеседования.

Решил поделиться своими мыслями о решении задачи, которую (как мне кажется) часто дают на собеседованиях.

Задача

Написать функцию, которая принимает несколько url адресов, а отдает сумму адресов и ошибку, если что-то пошло не так.

Интересно обсудить варианты решения?

Интересно Читать Далее
Total votes 19: ↑14 and ↓5+9
Comments36

Сокровища HTML: 7 тегов, которые упростят вам жизнь

Level of difficultyEasy
Reading time7 min
Views21K

Все мы знакомы с широко используемыми HTML тегами, такими как <div>, <p>, <a>, и <img>. Однако, существуют HTML - теги, которые могут упростить жизнь, и вместо написания дополнительного кода, выполнят всю работу :)

Читать далее
Total votes 70: ↑65 and ↓5+60
Comments28

Умные программисты пишут STUPID-код

Level of difficultyEasy
Reading time9 min
Views52K
Умные программисты пишут STUPID-код, ведь они понимают, что неожиданно возникшая сложность может привести к провалу проекта.


▍ Страдание


На момент написания этой статьи на моих часах 21:30.

Этим утром я проснулся в хорошем, оптимистичном настроении, рассчитывая на прекрасный день, но теперь вымотан.

Я вымотан не физически, а, скорее, разочарован тем, что, несмотря на все имеющиеся у нас замечательные технологии, позволяющие писать наилучшее ПО, мы, как люди, профессионально пишущие код, по множеству причин склонны ценить больше сложность, а не простоту.
Читать дальше →
Total votes 81: ↑77 and ↓4+73
Comments77

Базовый набор для решения задач на LeetCode/Codeforces, ч.1

Level of difficultyEasy
Reading time5 min
Views16K

«Время — это единственная вещь, которую все хотят иметь, но которую нельзя купить или продлить» — Харви Маккей

Эта серия тредов пригодится тем, кто только начинает учиться решать задачи на таких сайтах как LeetCode или Codeforces, используя при этом C++. В тексте присутствует описание основных библиотек и также по одному небольшому примеру.

Читать далее
Total votes 3: ↑1 and ↓2-1
Comments11

From Zero to Hero: определите ваш уровень решения LeetCode задач от 1 до 5

Reading time8 min
Views56K

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

А какой у вас уровень?

Читать далее
Total votes 26: ↑21 and ↓5+16
Comments25

Хочите виртуальный macOS на своём PC? Их есть у меня

Level of difficultyEasy
Reading time6 min
Views46K

Статья о том как установить себе "macOS Monterey" в виртуальной машине на обычном PC без покупки для этой цели макбука или айМака.

По идее это просто туториал как получить у себя на обычном PC систему macOS и Xcode, но так как я тут нахожусь в состоянии "Отхабренный" я могу отправлять статьи только в "Профильные хабы". По этой статье больше бы подошло "Tutorial", но такого хаба я не нашёл и поэтому выбрал наиболее близкие хабы по теме статьи: "Настройка Linux" и "Разработка под iOS". И КДПВ тоже я выбрал идиотскую -- просто сделал скриншот со своего компа где продемонстировал версию macOS и версию установленного у меня Xcode.

Если интересно, то "Читать далее"
Total votes 60: ↑48 and ↓12+36
Comments60

Создание telegram-ботов с интерактивным меню

Level of difficultyMedium
Reading time15 min
Views35K

Однажды меня попросили провести ревью и рефакторинг одного telegram-бота. Увидев файл размером 2000 строк, рассчитанный только на обработку разных меню я понял, что это требует унификации и общих подходов. Так родилась библиотека aiogram-dialog

В этой статье я бы хотел обратить внимание на некоторые проблемы, которые мы встречаем при создании таких меню, предложить варианты их решения. А во второй половине статьи показать как это решается с помощью aiogram-dialog.

Мы не будем рассматривать архитектуру всего приложения, об этом вы можете прочитать у Фаулера или Мартина. Мы поговорим только про определенную часть UI ботов. Так же это не будет введением в разработку telegram-ботов с нуля. Я предполагаю, что читатель знаком с питоном, ООП и слышал о такой вещи как DRY.

Примеры выбраны так, чтобы проще было показать определенные проблемы, но это не единственные сценарии приводящие к ним.

Читать далее
Total votes 25: ↑24 and ↓1+23
Comments4

Собираем и запускаем калькулятор из Windows XP в среде Windows 10 c помощью GCC x64

Level of difficultyHard
Reading time63 min
Views12K

Привет всем.

В данной статье мы немного проанализируем код Windows XP, a также соберем калькулятор c использованием GCC x64 в среде Windows 10. Будут показаны ошибки, с которыми я столкнулся в процессе сборки и подробно расписаны способы их решения. В конце будет продемонстрирован рабочий билд приложения calc.exe.

Всем приятного прочтения!

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

Собираем самый дешевый ПК для игр меньше, чем за 30000 рублей

Level of difficultyMedium
Reading time7 min
Views45K

Привет, Хабр! Сегодня мы поднимаем тему недорогих ПК. Такие бывают очень даже нужны там, где нужен хоть какой-то компьютер, но бюджет сильно ограничен. Это может быть компьютер для школьника или для развлечений в офисе (пока никто не смотрит). Может быть даже компьютер для бабушки (сейчас есть очень продвинутые пенсионеры). И понятное дело, что любой читатель Хабра может сопоставить между собой сокет материнской платы и процессор, частоты памяти и разъем SSD-накопителя. Но вот вопрос как укомплектовать недорогой ПК, не переплатить за что-то в его составе и не потратить кучу времени — остается открытым. Ответ на него мы ищем под катом и обсуждаем в комментариях.

Читать далее
Total votes 33: ↑24 and ↓9+15
Comments78

Запускаем IDEA и CLion на Android

Level of difficultyMedium
Reading time18 min
Views7.2K

На современных Android телефонах и планшетах стоит отличное железо - многоядерные CPU с несколькими гигабайтами памяти. Этого всего вполне хватит для запуска даже таких тяжеловесных программ как IDEA и CLion. И сейчас я вам расскажу как это сделать.

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

На работу не берут без опыта, а опыт без работы не получить. Что делать? Собрали 25+ стажировок для тестировщиков

Level of difficultyEasy
Reading time10 min
Views23K

Джуна не берут на работу без опыта, а опыт без работы он получить не может.
Что делать?

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

Итак, поехали!

Оплачиваемые стажировки:

Читать далее
Total votes 10: ↑8 and ↓2+6
Comments6

Создание красивого Desktop-приложения на Python (customtkinter)

Level of difficultyEasy
Reading time4 min
Views50K

Если Вы как и я решили впервые взглянуть в сторону Python после нескольких попыток изучения С++/C# то скорее всего первым проектом станет desktop-приложение. Отходя от темы скажу что тяга к изучению этих языков была безнадежно утрачена в виду классического преподавания в духе "лишь бы сдали" и бесчисленных однотипных и монотонных лекций. Как я сказал выше хоть и на начальном уровне, но я всё же касался разработки приложений для шинды и поэтому мне хотелось посмотреть на принципы работы питона сначала отсюда(а не прыгать в django и прочие мощные фреймворки).

Читать далее
Total votes 30: ↑28 and ↓2+26
Comments112

Игра «Жизнь» в одном твите

Level of difficultyEasy
Reading time10 min
Views8.3K

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

В одно прекрасное воскресенье, потягивая пиво и размышляя о жизни, я вдруг подумал: а можно ли вместить JavaScript-реализацию игры «Жизнь» в один твит? И не смог устоять перед желанием попробовать свои силы. 

Читать далее
Total votes 20: ↑19 and ↓1+18
Comments11

Прикладное adb (Android Debug Bridge) для зумеров

Level of difficultyEasy
Reading time2 min
Views9.4K

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

В этой инструкции хочу рассказать о командах adb, которые использовать легче, чем делать то же самое через UI.

Основная задача — показать возможности adb, которые избавят от рутинных шагов при разработке/отладке. Например, позволят быстро переключать светлую тему на темную.

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

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

[Пятничное] Теория Жоп

Reading time5 min
Views195K

Эту полу-шуточную теорию о проектном управлении я излагал коллегам по ИТ цеху лет 15 назад, и тогда же неоднократно слышал советы загрузить этот текст на Хабр, но руки не дошли. На днях, разгребая старые файлы наткнулся на свои записи и решил все таки поделиться ими с Вами. Частое употребление ключевого слова к сожалению, неизбежно и не отделимо для целостности этого текста, прошу принимать или нет 'as is'. Итак...

Каждая карьера развивается от Жопы к Жопе, и никак иначе. Хочешь повышения - ищи Жопу и принимай, как говорят в Америке, "challenge". Если Вам предлагают возглавить новый проект, либо занять какую то должность, да что угодно - знайте, там Вас ждет Жопа. Иначе не предложили бы, а сами бы справились. Равно как и если Вы ожидаете избавиться от надоевшей Вам сейчас деятельности, надеясь вырваться из "этого ада" и заняться "чем то новеньким" - будьте готовы встретиться с Большой Жопой.

Читать далее
Total votes 496: ↑485 and ↓11+474
Comments99

Городская фотоохота

Level of difficultyEasy
Reading time10 min
Views16K


Наверное, вы, как и я, узнали о фотоохоте из мультика «Простоквашино». Идея фоторужья вызвала у меня восторг. Эта штука, словно сплав двух несовместимых вещей, соединяет эргономику оружия и несмертоносность фотокамеры.

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

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

Внимание, в статье внушительное количество фотографий объёмом около 60 мегабайт!
Смотреть котиков!
Total votes 120: ↑116 and ↓4+112
Comments158

Так всё же, за что Интернеты полюбили Ктулху? Часть финальная с тонной мемов

Level of difficultyEasy
Reading time9 min
Views8.2K

Шевеля щупальцами и тентаклями, мы наконец доползли до финальной части нашей эпопеи про историю восхождения Ктулху — от странного творения позабытого всеми чудака из Провиденса до одного из самых известных персонажей интернетов. Ранее мы рассмотрели, кто вообще такой Ктулху, как Лавкрафт дошёл до жизни такой и как наш герой выбрался из тьмы забвения к узнаваемости как минимум в американской гик-культуре. (И было там многабукав — почти как в Некрономиконе...)

И вот мы наконец добрались до ключевой темы: как Ктулху стал звездой интернетов?
Читать дальше →
Total votes 44: ↑41 and ↓3+38
Comments5
1
23 ...

Information

Rating
Does not participate
Location
Россия
Registered
Activity