Pull to refresh
4
0
Бобыкин Антон @arvie

User

Send message

Субъективный топ подкастов про IT: разработка, продукт, дизайн, аналитика

Reading time6 min
Views4.8K

Привет! Меня зовут Даша Пешая, я head of developer relations в СберМаркете. А еще – фанат подкастов, слушаю их при каждом удобном случае. Считаю, что нет удобнее формата узнавать новое, совмещая это с прогулкой с собакой / поездкой в метро / пробежкой / или, как пишут в анкетах, впишите свой вариант ответа. 

За последние пару лет русскоязычный ассортимент подкастов изрядно подрос и многие шоу искренне хочется рекомендовать. Будет и вечная классика (хиты 2020-ых), и свежие подкаст-игроки. Но главное, в подборку вошли только актуальные подкасты, которые регулярно выходят и растят вокруг себя уютные комьюнити.  Если я что-то упустила, смело добавляйте в комментарии.

Читать далее
Total votes 11: ↑8 and ↓3+5
Comments14

Типы, методы и интерфейсы

Level of difficultyEasy
Reading time13 min
Views4.7K

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

В статье вы узнаете про:

- Объявление собственных типов;
- Добавление методов к типам;
- Объявление и использование интерфейсов.

Читать далее
Total votes 18: ↑15 and ↓3+12
Comments6

SAFe и LeSS: много шума из ничего

Level of difficultyEasy
Reading time5 min
Views6.6K

В настоящее время в интернете много эфирного времени посвящено обсуждению различных достоинств масштабирования Agile и ведущих подходов в этой области: Scaled Agile Framework (SAFe http://www.scaledagileframework.com) и Large Scale Scrum (LeSS http://www.craiglarman.com/Large-Scale_Scrum ).

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

На бумаге …

SAFe основан на работе Дина Леффингвелла (Dean Leffingwell), и был формализован в виде фреймворка в 2011 году. Я работал с Дином в 2008 во время руководства командой консультантов в одной крупной многонациональной компании мобильной связи, помогая им определить и внедрить ранний подход к планированию Agile Release Train (ART)  –  то, что теперь эволюционировало в SAFe.

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

Автоматизируем домашний медиацентр на Synolgy NAS

Level of difficultyMedium
Reading time5 min
Views29K

Приветствую читатели хабра, в этой статье я бы хотел поделиться своим опытом организации домашнего медиацентра с торрент качалкой на Synology NAS: sonarr + radarr + jackett + qBittorrent.

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

План самостоятельного обучения DDD, CQRS, EventSourcing

Reading time7 min
Views38K

Если вы собрались плотно погрузиться в тему Doman Driven Design (DDD), о том как его применять, как использовать, для чего он нужен, и как с ним связаны Command and Query Responsibility Segregation (CQRS), Event Sourcing и другие термины из мира DDD то можно воспользоваться планом обучения, который последовательно погрузит вас в эти темы и поможет сориентироваться. Часть информации на русском, часть на английском языке, так как русскоязычных аналогов я не смог найти.

Погрузиться в DDD
Total votes 36: ↑35 and ↓1+34
Comments4

Глубокое погружение в Java Memory Model

Reading time53 min
Views127K


Я провел в изучении JMM много часов и теперь делюсь с вами знаниями в простой и понятной форме.


В этой статье мы подробно разберем Java Memory Model (JMM) и применим полученные знания на практике. Да, в интернете накопилось достаточно много информации про JMM/happens-before, и, кажется, что очередную статью про такую заезженную тему можно пропускать мимо. Однако я постараюсь дать вам намного большее и глубокое понимание JMM, чем большинство информации в интернете. После прочтения этой статьи вы будете уверенно рассуждать о таких вещах как memory ordering, data race и happens-before. JMM — сложная тема и не стоит верить мне на слово, поэтому большинство моих утверждений подтверждается цитатами из спеки, дизассемблером и jcstress тестами.

Читать дальше →
Total votes 109: ↑109 and ↓0+109
Comments60

30 лучших Python-проектов на GitHub на начало 2022 года

Reading time9 min
Views56K

Наверняка многим из вас любопытно было бы узнать, какие Python-проекты являются самыми популярными на начало 2022 года. GitHub, безусловно, лучшее место для получения этой статистики. Пусть здесь можно найти не все проекты, но ему нет достойной альтернативы.

UPD: добавили ссылки.

Читать далее
Total votes 50: ↑44 and ↓6+38
Comments15

Современный Python: как начать свой проект с нуля при помощи Pyenv и Poetry

Reading time7 min
Views51K

Рассказываем, как начинающему разработчику установить и управлять различными версиями Python с помощью Pyenv, подготовить свой проект и создать виртуальное окружение через Poetry.

Читать далее
Total votes 16: ↑12 and ↓4+8
Comments16

IT — не для всех

Reading time4 min
Views66K

Не ходите, девки, замуж! 
Ничего хорошего!..

Ребята, вы серьёзно? Хотите в ИТ? Извините, но вам тут не место…

Нет, мне не жалко вакансий для кого-то со стороны, благо их до боли много. Перманентно нахожусь в состоянии поиска специалистов, но их НЕТ!!! И проблема не в отсутствии желающих занять тёпленькое местечко, а в катастрофической нестыковке желаний с возможностями. И знаете что самое ужасное? Люди, порой, даже не осознают, что ИТ-специальность им не подходит от слова “совсем”. И для этого есть ряд причин, давайте разложим всё по пунктам: во-первых, отсутствие хард-скилов, во-вторых, отсутствие софт-скилов, и наконец, отсутствие врожденных способностей. Да, да, последняя фраза именно о главном - о том, что люди не равны с рождения. И да, в ИТ не может попасть каждый желающий, а причина этому - вы не так устроены с рождения. Уж простите! Но тут совершенно не на что обижаться! Я объясню…

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

>>>
Total votes 385: ↑266 and ↓119+147
Comments383

Создание и тестирование неблокирующих веб-приложений с помощью Spring WebFlux, Kotlin и Coroutines

Reading time14 min
Views8.4K

Когда поступает HTTP-запрос, «обычное» веб-приложение сопоставляет запрос с конкретным потоком из пула потоков. Этот назначенный поток остается с запросом до тех пор, пока ответ не будет возвращен в сокет запроса. Попутно нам может потребоваться получить данные из некоторой веб-службы или базы данных, прочитать или записать в файл или выполнить другие вызовы ввода-вывода, во время которых поток блокируется и должен ждать, пока не получит ответ. Для приложений с высокой частотой запросов пул потоков может в какой-то момент исчерпаться, и тогда новые запросы больше не будут обрабатываться.

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

Подход появился, когда группа компаний объединилась в инициативе Reactive Streams, чтобы определить ключевые принципы и четыре интерфейса JVM. После этого они практически каждый пошли своим путем, чтобы создать реактивную библиотеку на основе этих соглашений. Одна из этих библиотек, Project Reactor, является основой, на которой Spring построил свою реактивную веб-платформу Spring WebFlux. 

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

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

Из техпода в программисты (или Golang для самых маленьких)

Reading time11 min
Views40K

Доброго времени суток, Хабровчане! 

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

Читать далее
Total votes 25: ↑23 and ↓2+21
Comments8

Список современных книг для Engineering Manager’а

Reading time9 min
Views9.9K

В данном посте мне хотелось бы поделиться списком книг, которые (по крайне субъективному мнению) являются полезными и весьма практичными для Engineering Manager’а. При этом акцент хочу сделать именно на современных книгах (выпущенных в последние 5-6 лет). Под Engineering Manager’ом, в моем вольном определении, будем понимать бывшего инженера, ставшего руководителем, решающего как технические (например, внедряем RabbitMQ или Kafka), так и административные вопросы (например, план обучения новичков, сколько еще нанять разработчиков и каких и т.п.). Под такое понятие могут подпадать Tech Lead, Team Lead, Project Manager.

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

Шпаргалка по Spring Boot WebClient

Reading time6 min
Views72K

WebClient — это неблокирующий, реактивный клиент для выполнения HTTP-запросов.

ПРИМЕЧАНИЕ: Начиная с версии 5.0, этот класс законсервирован и в дальнейшем будут приниматься только минорные запросы на изменения и на исправления багов. Пожалуйста, подумайте об использовании org.springframework.web.reactive.client.WebClient, который имеет более современный API и поддерживает синхронную, асинхронную и потоковую передачи.

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

10 полезных книг для менеджера и лидера в IT секторе

Reading time5 min
Views32K


Я работаю много лет в индустрии разработки программного обеспечения и последние несколько лет я активно вовлечен в консалтинг и pre-sales фазы. И я заметил, чтобы быть успешным лидером как для менеджера проектов, представляющего бизнес-сторону, так и для архитектора – технического представителя необходимо совмещать в себе технические и лидерские качества.

Для меня наиболее полезным и эффективным источником обучения являются книги. И я бы хотел поделиться с вами топ 10, по моему мнению, книг полезных для начинающих и не только лидеров в разработке программного обеспечения. Эти книги помогут развить и улучшить лидерские качества необходимые в данной индустрии. Я не буду перечислять знаменитые менеджерские бестселлеры такие как Laws of Leadership или Good to Great. Я порекомендую более целевые книги, которые будут, несомненно, полезны именно лидерам в индустрии разработки программного обеспечения.

Название всех книг будут указаны на языке оригинала, но вы без труда сможете найти многие из них и в переводе.
Читать дальше →
Total votes 25: ↑21 and ↓4+17
Comments15

9 репозиториев, о которых должен знать каждый веб-разработчик

Reading time4 min
Views21K
В наши дни GitHub — это универсальное хранилище всего, что связано с веб-разработкой. Фреймворки, демоверсии, всевозможные коллекции — вероятно, нет ничего такого, что вы не могли бы найти на GitHub. Однако в этом огромном количестве и заключается проблема. Есть классные вещи, о которых вы, вероятно, никогда не услышите просто потому, что репозиториев много. Сегодня, специально к старту нового потока курса по веб-разработке мы делимся подбокой некоторых из самых популярных репозиториев GitHub, о которых вы должны знать, каждый из которых имеет по крайней мере ~30 000 звёзд.

Приятного чтения
Total votes 50: ↑28 and ↓22+6
Comments5

Советы по продажам для технических стартапов

Reading time9 min
Views1.7K
Кэрол занимается развитием бизнеса компании Leadfeeder в США. Она обладает суммарно более чем 10 годами опыта в маркетинге, продажах и развитии бизнеса.

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

1. Идентификация и приоритизация легкодоступных лидов


Станьте лидером мнений в вашей области и делитесь знаниями на вопросно-ответных сайтах, таких как Quora, Inbound.org, Stack Exchange. Это быстрый способ продвигаться ваш продукт, так как вы можете просто искать людей, спрашивающие о проблеме, которую вы решаете.

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

Когда вы отвечаете на вопросы не будьте слишком навязчивы в рекламе ваших услуг или продукта, но не скрывайте свою роль в вашей компании.
Total votes 26: ↑20 and ↓6+14
Comments0

57 отборных репозиториев для всех разработчиков Python

Reading time8 min
Views26K
Специально к старту нового потока курса «Python для веб-разработки» представляем подборку из 57 репозиториев, которые будут полезны как начинающему, так и опытному разработчику: это репозитории с ответами на вопросы собеседований, репозитории с книгами, небольшие, но полезные консольные инструменты и проекты, которые вдохновят вас написать красивый, работающий и полезный код.


Приятного чтения!
Total votes 22: ↑19 and ↓3+16
Comments15

Go Channels Internals

Reading time12 min
Views23K
На Go можно реализовать тысячи goroutine одновременно без больших требований к железу. При этом горутины могут легко и просто обмениваться данными между собой и синхронизироваться с помощью каналов. Но как устроены каналы внутри? Об этом написано не так уж много, а в условиях многопоточки и асинхронного кода хорошо бы не просто работать с каналами, а понимать, как их использовать более практично и эффективно.

Егор Гришечко, старший разработчик в Insolar, разрабатывает блокчейн для b2b сегмента (по сути, стартап), и у команды как раз большая многопоточка и много асинхронного кода. Егор не только разобрался на практике, как работают каналы, что это такое и как они вообще устроены внутри. Он еще рассказал о каналах внутри команды, а потом, увидев интерес, поделился на конференции Golang Conf 2019.

Сегодня мы публикуем расшифровку его доклада.


Читать дальше →
Total votes 42: ↑41 and ↓1+40
Comments2

WorkBox: ваш toolkit в мире сервис-воркеров

Reading time6 min
Views14K

Всем привет! 

Меня зовут Святослав. Я лидирую разработку сервисов оформления ипотеки в компании Домклик. Не так давно наша компания взяла курс на внедрение философии Progressive Web Application в наших клиентских сервисах.

Одним из важных аспектов PWA является использование технологии Service Worker API. Однако технология не так проста, как кажется на первый взгляд. Для эффективного использования нужно пройти тернистый путь из квестов, связанных с особенностями жизненного цикла воркеров, неполной поддержкой браузерами, проблемами с политикой кэширования и попутно встречающимися сайд-эффектами (кэширование устаревшего контента, сломанные ссылки и другое).

Workbox - это набор инструментов, предоставляющих высокоуровневый API для конфигурации и работы с такими браузерными технологиями как Service Worker API и Cache Storage API. Инструментарий состоит из набора изолированных модулей, которые помогут сделать ваше приложение "offline-ready". 

Читать далее
Total votes 29: ↑29 and ↓0+29
Comments5
1
23 ...

Information

Rating
Does not participate
Location
Новосибирская обл., Россия
Registered
Activity