DevFM
2.35K subscribers
80 photos
5 videos
493 links
О разработке: технологии, инструменты, system design, процессы, команды

Для связи @sa_bul
Download Telegram
Backup: август

Python:
1. Управляем зависимостями: poetry / вендоринг
2. Пример логгирования в python / применяем else в цикле for / разбираем код в трёх постах
3. Заглушки для тестирования — постановка задачи и решение

Обучение:
1. Сравнение брокеров сообщений: идеальные критерии
2. Английский язык: почему он важен / как я научился воспринимать английский на слух
3. Чему стоит научиться в вузе? (хватить губить будущее ИТ)

Рассуждаем о программировании:
1. Нормальный ли у меня код?
2. Поддерживаемость кода
3. Чем плох goto?
4. Чему я научился за 30 лет в разработке?

Hardskills:
1. Подводные камни в bash
2. Анатомия Linux

Самое популярное:
Корчеватель ломает науку — как сгенерированные тексты пытаются опубликовать в рецензируемых изданиях

Наши видео:
1. Идеальный скрипт на bash
2. Атака forkbomb в docker
3. Стрим по python

#backup
🔥161👍1
Навигация по каналу

#sudo — наиболее важные посты. Начать знакомство с каналом рекомендуем с них.
#devfm — материалы собственного производства. Не просто аннотации, а наши мысли, статьи и видеоролики.

#python — фокусируемся на самом языке и его библиотеках.
#codereview — разбираем код, находим и устраняем проблемы, превращаем плохой код в хороший.
#procode — о профессиональной разработке и тестировании вне зависимости от языка.
#skills — о смежных с разработкой технических навыках, необходимых для работы и резюме. Инструменты (в том числе git, bash, docker), командная работа, безопасность и прочие фундаментальные вещи.
#systemdesign — проектирование систем и построение архитектуры.
#tools — полезные инструменты для работы.
#edu — полезные нетехнические навыки. Об обучении, продуктивности, английском, умении искать и обосновывать решения.
#youtube — видеоматериалы.
#fun — пятничное развлекательное и культурный код. Обзор художественных фильмов #films, книг #books, комиксов #xkcd и прочего.

#backup — лучшие посты месяца.
1👍183🔥3
Backup: сентябрь

Python
1. Типовая структура python-проекта без веба
2. Вопросы для junior python developer 
3. Зачем WSGI в Python?
4. Почему стоит выбрать Python
5. Возможности f-строк 
6. Разработка надёжных Python-скриптов 
7. Pattern Matching 

Нетехнические навыки:
1. Социальная инженерия Кевина Митника
2. Хорошая и плохая прокрастинация 
3. История поиска работы "Борис опять"

Рассуждаем о программировании:
1. Sublime Merge — графический git-клиент
2. Магия CORS 

Разбираем код:
1. Что же не так в этом коде?
2. Хитрости getattr

Hardskills:
1. Брокер сообщений Apache Kafka 
2. Проектируем сервис: поиск организаций по картам
3. Поиск команд в консоли с помощью ctrl+r 
4. Постигаем git stash 
5. Мониторинг важен. Рабочий мониторинг ещё важнее
6. Продолжаем о собеседованиях 
7. Миграция БД без даунтайма

#backup
🔥8👍321
Backup: октябрь

Hardskills:
1. Docker. Практические советы
2. Тернистый путь к ClickHouse
3. ИИ на службе мошенников 
4. Dependency Injection в python
5. Генеративно-состязательная сеть (GAN)

О программировании:
1. Pre-commit — must have утилита любого проекта
2. Делаем код мягким и шелковистым
3. Технический долг 
4. Git — исход 

Разбираем код:
1. Реализуем read-only атрибуты
2. Поверхностное копирование объектов и изменяемость типов
3. Чисто позиционные параметры

Нетехнические навыки:
1. Какие знания нужны разработчику?
2. Проблемы курсов по программированию
3. Теория разбитых окон
4. Синдром «я так и знал»

Собеседования:
1. Завышать ли опыт в резюме?
2. Пересмотри своё собеседование
3. Что я увидел в своих собеседованиях, часть 1

#backup
🔥9👍63
Backup: ноябрь

Python:
1. Шаблонизатор HTML — Jinja
2. Тестирование миграций alembic
3. refurb — ещё один анализатор кода

Hardskills:
1. Зачем вам нужен докер?
2. Разухабистое логирование
3. Паттерн Сага 
4. Сервис проверки регулярок — regex101
5. Google Global Cache 
6. Проблемы MongoDB
7. Wine для доступа к Windows-приложениям на Linux
8. Снижаем нагрузку на БД с помощью аналитической базы 

Нетехнические навыки:
1. Трекайте рабочее время
2. Ключевая способность программиста 
3. Почему трава зеленая, а программисты крутые
4. Зачем нужны конференции 
5. Преодолеваем постоянное откладывание дел

Собеседования:
1. Что я увидел в своих собеседованиях, часть 2 
2. Задача на собеседовании — проектируем динамическую фильтрацию
3. Собеседование Junior Python Backend Developer 

Пятничное:
Подборка xkcd  / Кто хочет стать миллионером  / Прививка от азартных игр  / Теория подталкивания  / Что такое маркетинг 

Фильмы:
Терминатор  / Здесь курят  / Из машины и Суррогаты / Двухсотлетний человек

#backup
👍4🔥4🌭211
Backup: декабрь. Топ постов за месяц

1. Читаем документацию на примере FastAPI
2. Подборка базовых материалов для python-разработчиков на 2022 год
3. Kubernetes в небольших проектах
4. Регулярные выражения в Python от простого к сложному
5. Ищем свой пароль в файле размером 37 Гб на Python. В комментариях разгорелась дискуссия, заменит ли ChatGPT джунов
6. Хватит пересылать пароли в открытом виде
7. FastAPI best practices
8. Идемпо… что? Улучшаем API
9. Зелёные потоки в Python
10. Давай-давай, пиши документацию

#backup
9🔥72👍2🌭1
Backup: январь

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

О самом важном
— Введение в Kubernetes
Составляем документацию разработчика пошагово без диет и тренировок
Принципы, которыми стоит руководствоваться
ООП на простых примерах

Архитектура проекта
— Проектируем систему — System Design
Практика распила монолита
— Жизненная история. Выбираемся из болота большого проекта
БезТЗатый программист

Интересное по Python
Python import: Advanced Techniques and Tips
— Классные pre-commit хуки
Покоряем большие CSV

Используем базы данных
Индексы в PostgreSQL
Этапы выполнения запросов в PostgreSQL
Manticore Search как замена Elasticsearch

Крутые базовые материалы
Вспоминая git
— Признаки хорошего логирования
Частичное клонирование репозитория

Строим веб-приложение
— Кажется, ваше приложение сейчас пятисотит
Авторизация через OAuth и OIDC
JWT и его друзья

Нейросети нас заменят
— Доступаемся до ChatGPT
Google Coding Interview With An Artificial Intelligence (ChatGPT)

#backup
🔥62🌭2
Backup: февраль

В этом месяце мы много говорили о проектировании, деплое и инфраструктурных технологиях. Не забыли о собеседованиях, питоне и софт-скиллах

Архитектура проекта и деплой
Design distributed cache
Стратегии деплоя
GitOps – все ли так классно?
За всё хорошее, против всего плохого

Важные инструменты
Практикуем Kubernetes
Как kafka хранит данные
Очереди – что сложного то?
Нестареющая классика, шпаргалка по SSH

Интересное по Python
Многопоточный Python на примерах: избавляемся от дедлоков
Мемоизация и каррирование в Python
Введение в logging на Python

Подготовка в собеседованиями
Правильная структура ответа на собеседовании
Как сдвинуть гору Фудзи
Подготовка к интервью в Тинькофф

PostgreSQL
Буфферный кеш в PostgreSQL
NULL в PostgreSQL

Нетехнические навыки:
Моё разочарование в софте
The Lesson to Unlearn — Вредные уроки от Пола Грэма
Упрощаем жизнь руководителю

Необычное для нас: You Suck at Excel with Joel Spolsky

Если пропустили, то подборка за январь

#backup
🔥53🌭2👍1
Backup: март

В этом месяце было много инструментов, баз данных, инфраструктуры и софт-скиллов. Питон тоже не забыт, вспоминали итераторы, FastAPI и именование переменных.

Работаем с проектом
Постигаем gRPC
Снова о микросервисах
Поиск недокументированных API

Софт-скиллы
Teamlead roadmap
Работаем с аудиторией на выступлении – TEDx

Базы данных
Следим за PostgreSQL
Проектируем БД в DB Designer
Где бы ещё сохранить данные? В Greenplum

Python
Итерируем всякое
Как ускорить приложение на FastAPI
Делай нейминг как сеньор

Инструменты
Доступность компа извне с помощью ngrok
Комментарии в маркдауне
Airflow или что-то ещё?

Нас тепло приняли на хабре со статьёй Реверс инжиниринг для самых маленьких на практике

Если пропустили, то подборка за февраль

#backup
5🌭4🔥3👍1