Как стать автором
Обновить
0
0

Архитектор программного обеспечения

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

Как мы писали свой курс по Go и почему в итоге их получилось три

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


В ноябре 2021 года Яндекс.Практикум запустил курс «Go-разработчик» для программистов, которые хотят добавить Go в свой стек. На курсе не рассказывают о базовых вещах, а сразу объясняют студенту, как переложить его знания в парадигмы Go.

Меня зовут Алексей Полевой, я продакт-менеджер курса. В этом посте мы с командой расскажем, почему не обучаем программированию на Go с нуля, зачем даём два учебных проекта на выбор и насколько важен обмен опытом с ментором — действующим сеньор-разработчиком.
Читать дальше →
Всего голосов 21: ↑19 и ↓2 +17
Комментарии 5

Интеграция с Allure: структурировать, упростить, стабилизировать

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

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

Читать далее
Всего голосов 18: ↑18 и ↓0 +18
Комментарии 6
В твоей жизни настал переломный момент: необходимо написать статью на Хабр. Нужно, конечно, написать её хорошо. И ни в коем случае не написать плохо. Но начинающему автору это полезнейшее наставление слабо помогает (немудрено — нужна конкретика!). Поэтому мы собрали коллекцию хабрастатей о том, как писать технотексты — в них сами хабравчане поделятся тем, что умеют.

Лень или банально нет времени переходить по ссылкам и читать много длинных статей? Для удобства мы скомпилировали самую важную информацию прямо под катом.
Да, это вот тут
Всего голосов 51: ↑47 и ↓4 +43
Комментарии 24

Чек-лист: что нужно было делать до того, как запускать микросервисы в prod

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

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


К сожалению, некоторые невысокие программисты всерьёз полагают, что Dockerfile с какой-нибудь вообще любой командой внутри — это уже сам по себе микросервис и его можно деплоить хоть сейчас. Докеры крутятся, лавешка мутится. Такой подход оборачивается проблемами начиная с падения производительности, невозможностью отладки и отказами обслуживания и заканчивая кошмарным сном под названием Data Inconsistency.


Если вы ощущаете, что пришло время запустить ещё одну аппку в Kubernetes/ECS/whatever, то мне есть чем вам возразить.


English version is also available.

Читать дальше →
Всего голосов 138: ↑135 и ↓3 +132
Комментарии 71

Зачем и как хранить объекты на примере MinIO

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

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

Начать хранить файлы
Всего голосов 28: ↑26 и ↓2 +24
Комментарии 8

Архитектура PlayStation 3, часть 3: Три «ОС»

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

Теперь, когда PlayStation 3 стала мощным мультимедийным центром, то ей требуется более сложная операционная система (ОС), чтобы предоставить пользователям больше различных сервисов и игр.

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

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

Лучшие стратегии разработки фронтенда в 2022 году

Время на прочтение 13 мин
Количество просмотров 25K
Эта статья специально написана так, чтобы ставить перед читателями неоднозначные задачи, вызывать у них противоречивые чувства и давать им пищу для размышлений. Речь здесь пойдёт о множестве свежих идей, о которых вы, вероятнее всего, пока не слышали.

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



Ещё я постараюсь выражать свои мысли как можно проще — так, чтобы даже люди, не являющиеся разработчиками, смогли бы, хотя бы в общих чертах, меня понять.
Читать дальше →
Всего голосов 41: ↑36 и ↓5 +31
Комментарии 35

От тестов до IDE в браузере: как мы разрабатывали систему проверки студентов для онлайн-школы

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

С 2018 года компания KTS проводит курсы для разработчиков и менеджеров. И в этом году мы решили запустить наши курсы на своей собственной платформе для онлайн-обучения (LMS).

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

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

Как запустить 100+ компиляторов и выстоять. Опыт Яндекс.Контеста

Время на прочтение 14 мин
Количество просмотров 7.3K
Привет, это снова Павел Тыквин, разработчик Яндекс.Контеста. Контест больше всего известен как площадка для соревнований по программированию: прямо сейчас идёт квалификационный этап чемпионата Yandex Cup. Я уже писал на Хабре о том, как мы решаем одну из стоящих перед нами проблем: выравниваем время исполнения кода. Ну а в этой статье я приоткрою детали процесса проверки, расскажу, через какие этапы проходит код участников и какими методами мы оптимизируем этот процесс, а также — как мы добавили возможность решать задачи на том языке, с которым участник уже знаком (вне зависимости от способов тестирования внутри платформы).

Как происходит проверка решения


Возьмём для примера простейшую задачу: вам заданы два целых числа a и b, выведите a+b.

Допустим, решение будет таким:

source.cpp:
#include <bits/stdc++.h>

using namespace std;

int main() {
    int a, b;
    cin >> a >> b;
    cout << a + b << endl;
}

Как можно проверить это решение вручную без участия дополнительных сервисов и библиотек?
Например, так
Всего голосов 24: ↑24 и ↓0 +24
Комментарии 6

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

Время на прочтение 10 мин
Количество просмотров 28K
После очередного поста про работу нашего VDS-хостинга под постом одна крупная и уважаемая компания оставила длинный комментарий с оправданиями своего косяка, упомянутого в посте. Что интересно, до этого их представитель позвонила мне и провела диалог, который сводился к «у нас, в мире крупных компаний, так не принято». В голове сразу всплыли контрпримеры, когда сервис в энтерпрайзе хуже, чем в забегаловке где-нибудь в Сочи. Про них я и хочу рассказать.

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


Собственно, я хорошо знаю, о чём говорю, потому что допустил часть этих ошибок сам, в том числе в проекте хостинга. И мем про меня тоже. И только побывав по обе стороны баррикад, более-менее разобрался.
Читать дальше →
Всего голосов 167: ↑164 и ↓3 +161
Комментарии 21

Версионирование API или единая кодовая база для всех версий

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

За 21 год существования в SuperJob разработали три версии реализации API для интеграций с бэкендом. Во время разработки последней они решили пересмотреть подход к версионированию. Сейчас в актуальной реализации порядка 379 эндпойнтов, более 900 моделей сущностей и 11 поддерживаемых мажорных версий. Когда проект развивается, вместе с ним меняются и требования к API, а значит неизбежно нарушение обратной совместимости.

Опытом решения этой проблемы поделился Антон Золотилин из SuperJob. Вы увидите самые распространенные решения проблемы версионирования web-API и подход, который реализовал у себя SuperJob. А в качестве бонуса узнаете, как это решение помогает значительно сократить рост затрат на тестирование версий с помощью Impact-анализа.

Читать далее
Всего голосов 44: ↑42 и ↓2 +40
Комментарии 13

Лайфхаки от Boomburum-а

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

Привет, Хабр! В моей голове долгое время скребётся тараканом идея рассказать вам про пару лайфхаков, которые я использовал когда-то или продолжаю использовать до сих пор. Нашёл свободную минутку и предлагаю вашему вниманию 20 килознаков — надеюсь, что-нибудь пригодится и вам. 

Читать далее
Всего голосов 141: ↑131 и ↓10 +121
Комментарии 98

Разработка 64-битного графического UEFI-приложения в Visual Studio

Время на прочтение 9 мин
Количество просмотров 17K
Зимой в блоге RUVDS было несколько статей о написании загрузчиков для «классического» BIOS, в т.ч. симпатичная графическая демка, целиком помещающаяся в загрузочном секторе и работающая в VGA-режиме 320×200. Комментаторы справедливо отмечали, что в наступившем 2021 г. нет смысла осваивать это лютое легаси;
а вот статей про “Hello, World” на UEFI да с графикой действительно не хватает. Больше того — я таких вообще не припомню.» (MinimumLaw)
Под катом мы пошагово перепишем ту бутсекторную демку под UEFI, и она будет работать в полноцветном видеорежиме с высоким разрешением. С другой стороны, вместо 512 байт она будет занимать несколько десятков КБ.

Всего голосов 80: ↑80 и ↓0 +80
Комментарии 7

И еще разок про Serverless

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

С публичного релиза AWS Lambda прошло ни много ни мало 6 с лишним лет. Реактивные функции, реагирующие на события, не только позволили по-другому смотреть на архитектуру систем и приложений, но и породили новый buzzword Serverless.

Мотивом к написанию этой статьи служит пост в блоге Netflix. Прочитав его, а так же комментарии русскоязычной аудитории, я прихожу к выводу, что направление "бессерверных вычислений" еще не обкатано вдоль и поперек (как и в англоязычной тусовке, чего греха таить), и неплохо бы проитерироваться по этой теме еще раз.

Читать далее
Всего голосов 31: ↑30 и ↓1 +29
Комментарии 11

Golang-дайджест № 6 (1 – 30 июня  2021)

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

Свежая подборка новостей и материалов

Интересное в этом выпуске

Выпущены версии Go 1.16.5 и 1.15.13, выпущен gopls v0.7.0, создание собственного Ngrok в 130 строках, GopherCon Europe 2021 Online

Приятного чтения!

Читать далее
Всего голосов 16: ↑15 и ↓1 +14
Комментарии 0

Список ноотропов, покупка которых не окажется пустой тратой денег

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

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

Читать далее
Всего голосов 121: ↑85 и ↓36 +49
Комментарии 238

Как организовать тестирование, чтобы ускорить и стабилизировать релизы продукта. Часть 1

Время на прочтение 8 мин
Количество просмотров 13K
Если командная работа не согласована, между отдельными участниками процесса и целыми командами постоянно будут происходить столкновения, а продукты компании или микросервисы внутри одного продукта будут мешать друг другу при использовании общих ресурсов и инфраструктуры. Результатом будут постоянные поломки, конфликты и снижение темпов работы. Быстрые и предсказуемые релизы в таких условиях будут недостижимы.

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


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

Необычный дуалбут: ноутбук с «двойным дном»

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

Не так давно на Habr Q&A я наткнулся на интересный вопрос — как сделать, чтобы два жестких диска не видели друг друга? Чтобы вирус, попав на одну систему, никоим образом не мог заразить другую. В ответах предлагали достаточно стандартные способы — использовать полнодисковое шифрование, отключить диск в диспетчере устройств и даже поставить переключатель на питание. Но что если взглянуть на задачу совершенно с другого угла и сделать всё средствами самого HDD? Да-да, сегодня мы снова погружаемся в пучины модификации прошивок и реверс-инжиниринга!
Узнать подробности
Всего голосов 361: ↑357 и ↓4 +353
Комментарии 122

Управляемое тестирование: с чего мы начинаем, чтобы не было мучительно больно

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


Привет, Хабр! В поисках формата для рассказа о практиках тестирования я обратилась к гуглу с запросами “с чего начинать тестирование ПО” и “как подготовиться к тестированию ПО”. И нашла статьи о том, что нужно уточнять требования, применять техники и т. д. Хм… А что, если “составляющими контроля качества ПО” и даже в своем роде глоссариями в том самом поиске и стали стандарты и производные об этапах STLS? Да, все это необходимо – но недостаточно, подумала я.
Читать дальше →
Всего голосов 9: ↑8 и ↓1 +7
Комментарии 7

Книги, которые повлияли на меня как на разработчика и управленца

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

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

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

Читать далее
Всего голосов 30: ↑27 и ↓3 +24
Комментарии 3

Информация

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