Search
Write a publication
Pull to refresh
0
@Redlumusread⁠-⁠only

User

Send message

Как оживает смартфон: Android на старте

Level of difficultyMedium
Reading time7 min
Views9.6K

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

Что же на самом деле происходит в момент загрузки? Какие этапы преодолевает система от простого нажатия кнопки включения до появления интерфейса? И как устройство готовится к полноценной работе?

Вместе с Android-разработчиком Артёмом разберёмся, что скрывается под капотом Android и проследим процесс его запуска. Не пропустим ни шагу!

Читать дальше

Все, что нужно знать менеджеру о QA

Level of difficultyEasy
Reading time19 min
Views5.6K

Привет! Меня зовут Ваня Тришкин, я тестировщик в KTS.

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

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

Читать далее

Создаем эмулятор Sega Mega Drive на C++

Level of difficultyMedium
Reading time26 min
Views31K

В этой статье описано создание эмулятора 16-битной приставки Sega Mega Drive на C++.

Будет много интересного: эмуляция процессора Motorola 68000, реверсинг игр, графика на OpenGL, шейдеры, и многое другое. И все это на современном C++. В статье много картинок, можно хоть на них посмотреть.

Blast Processing!

Инновации в тестировании САПР: путь к созданию автоматизированного решения для тестирования

Level of difficultyMedium
Reading time11 min
Views2.1K

Автоматизация тестирования в мире САПР – это вызов, который невозможно переоценить. Инженеры, архитекторы и проектировщики создают сложнейшие модели, а разработчики ПО ломают голову, чтобы их инструменты работали без сбоев. Но чем мощнее становится программное обеспечение, тем сложнее его тестировать. Проверять САПР вручную – всё равно что искать иголку в стоге сена, который кто-то ежедневно переворачивает. Мы быстро поняли, что такой подход не работает. Поэтому решили изменить систему и построить свою.

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

Мы использовали Python, VirtualBox, JSON и PowerShell, чтобы тесты запускались в чистой среде, результаты были понятны всем, а интеграция с разработкой максимально простой. Архитектура гибкая, удобная и кроссплатформенная.

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

Читать далее

SSL и SSL-сертификаты для новичков

Level of difficultyEasy
Reading time8 min
Views37K

Представляю вашему вниманию перевод статьи SSL and SSL Certificates Explained For Beginners. Я долго разбирался с SSL, сертификатами, центрами сертификации - это единственная статья, после которой у меня что-то отложилось в голове :) Поэтому возникла идея перевести ее и донести до широких масс.

Читать далее

Парсер JSON в 500 строках Rust

Level of difficultyMedium
Reading time9 min
Views9.7K

За время прошлого семестра в универе я прошёл курс «Инструменты и компиляторы на основе синтаксиса». В рамках курса мы создавали сканер, парсер, компилятор и прочие инструменты для языка Plo. Писали мы их на Python, но тогда меня серьёзно заинтересовал Rust.

В итоге я решил заняться очередным хобби-проектом, и на сей раз создать парсер JSON на Rust. Мне хотелось проверить полученные на курсе навыки и, наконец-то, реализовать проект на этом языке, что я откладывал уже не один год.
Читать дальше →

5 вопросов тестировщика на собеседовании, или Красные флаги работодателя

Level of difficultyEasy
Reading time5 min
Views31K

Вы когда-нибудь оказывались в неловком положении на собеседовании, когда вас спрашивают: «Может, у вас есть к нам вопросы?» Это момент, которому не учат в университетах или на курсах по тестированию, но он может стать критическим развилкой на вашем профессиональном пути. Если вы только пробиваете себе дорогу в мире IT и это ваше второе или третье собеседование, то умение задать правильные вопросы может стать вашим личным компасом в определении, находитесь ли вы на пороге мечты или очередной галеры? На просторах Хабра можно найти множество статей на подобные темы, большая их часть сосредоточена на обсуждении таких аспектов, как зарплаты, отпуска, бонусы и так далее.

Меня зовут Влад я работаю в VK на позиции QA Engineer. Хочу поделиться своим топом вопросов для собеседования на позицию тестировщика, которые я собрал благодаря прохождению не одного десятка собеседований. Они помогут вам понять, с какой компанией вам предстоит иметь дело.

Читать далее

Если ваша карьера или бизнес не растут, значит вы так и не прошли ключевое испытание. О чем речь?

Level of difficultyEasy
Reading time6 min
Views40K

Слова про испытание могут показаться бредом, ведь современная работа — это просто работа. Это не «Матрица», не «Властелин колец» и не «Кунг-фу панда». Тут достаточно хорошо делать и хорошо будет, тут не надо голодать в пустыне и таскаться с кольцом по окрестностям, так ведь?

Читать далее

Упакуйте свой код правильно

Level of difficultyHard
Reading time13 min
Views6.3K

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

Читать далее

Как собрать Linux-контейнер с нуля и без Docker

Level of difficultyMedium
Reading time8 min
Views22K

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

Читать далее

Как работают файловые системы Linux-контейнеров

Level of difficultyEasy
Reading time4 min
Views22K

Откуда у контейнера берётся файловая система? Чтобы разобраться, инженер Google Михал Питр воспроизвёл действия Docker и создал файловую систему своими руками. От полноценной реализации его результат отличается тем, что в нём не используется пространство имён для дополнительной изоляции. 

Под катом — перевод, который поможет разобраться, как именно Docker создаёт новую файловую систему с помощью OverlayFS.

Читать далее

Многопоточное программирование на C

Level of difficultyMedium
Reading time13 min
Views14K

Привет хабр! Новичок в написании статей, но никогда не поздно начать. Объемный гайд по функциям pthreads для людей знающих базы C/C++.

Читать далее

Функциональный Kotlin. Во имя добра, радуги и всего такого

Reading time5 min
Views16K

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

Читать далее

Не бойтесь использовать Gradle

Reading time9 min
Views36K

Дорогие junior и все, кто занимается copy-past конфигов Gradle.

В этой статье я хочу простым языком рассказать вам о gradl'овой конфигурации сборки вашего проекта, чтобы вы не боялись использовать Gradle.

Читать далее

Java HotSpot JIT компилятор — устройство, мониторинг и настройка (часть 1)

Reading time8 min
Views42K
JIT (Just-in-Time) компилятор оказывает огромное влияние на быстродействие приложения. Понимание принципов его работы, способов мониторинга и настройки является важным для каждого Java-программиста. В цикле статей из двух частей мы рассмотрим устройство JIT компилятора в HotSpot JVM, способы мониторинга его работы, а также возможности его настройки. В этой, первой части мы рассмотрим устройство JIT компилятора и способы мониторинга его работы.
Читать дальше →

Как мы тесты в «коробочки» завернули

Level of difficultyMedium
Reading time10 min
Views3.4K

Привет! Меня зовут Антон Бурмаков, я QA Lead в КОРУСе. Со мной Герман Вавилин ( @Decayron85) из команды DevOps. Сегодня расскажем, как мы запараллелили смоук-тесты после мердж-реквестов, встроив их CI/CD и избавились от необходимости поддерживать множество окружений. 

Что в материале: 

Читать далее

Алгоритмы из теории графов: решаем сложную задачу из курса Яндекс Практикума

Level of difficultyMedium
Reading time7 min
Views11K

Привет! Меня зовут Евгений, и сегодня я представляю курс «Алгоритмы и структуры данных» Яндекс Практикума. В этой статье хочу вам рассказать про задачу, которая долгое время была проблемой для многих наших студентов. В том числе расскажу про несколько вариантов решения и о том, как их можно доработать.

Также я дам решение с помощью теории графов, основная сложность которого заключается в чтении входных данных.

Читать далее

Чек-лист новичка. Как стать системным аналитиком без опыта

Level of difficultyEasy
Reading time5 min
Views13K

Привет Хабр! Меня зовут Татьяна Ошуркова, я разработчик и системный аналитик. Когда я только начинала свой путь в айти, мне казалось, что опытные специалисты будто всегда были опытными, а дорасти до их уровня практически невозможно. Оказалось, что джуна отделяет от мидла (а то и выше) только усердная работа, и определенное количество лет, на протяжении которых нужно всегда искать возможности развития, решать новые задачи и не думать о том, что нерешенная с первого раза задача всегда останется нерешенной.

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

Читать далее

Spring Security: разберём по полочкам токены, фильтры и авторизацию (с диаграммами!)

Level of difficultyEasy
Reading time14 min
Views21K

Команда Spring АйО перевела статью, в которой подробно рассматривается процесс регистрации и аутентификации пользователей с использованием Spring Security.

Читать далее

Information

Rating
Does not participate
Registered
Activity