Анна Буянова (Anna Codes) – Telegram
Анна Буянова (Anna Codes)
401 subscribers
82 photos
1 video
1 file
149 links
Бэкенд-разработчица (Ruby). Иногда делаю образовательные проекты.

Личный канал о разработке ПО, программировании (на Ruby и не только), образовании в it.

лс: @lightalloy
Download Telegram
Расскажу про очередной подкаст, Command line heroes (https://www.redhat.com/en/command-line-heroes)
Его делает Сарон Итбарек, основательница CodeNewbie (https://www.codenewbie.org/), а спонсирует RedHat.
Благодаря этому, подкаст записан очень профессионально. Вам не придётся продираться сквозь помехи или разбирать нечёткую речь. Я думаю, он подойдёт и для изучения английского. Темы последних эпизодов для примера: история создания языков программирования, инфраструктура на коболе и что с ней делать.
Ещё на сайте можно поиграть в игру(https://red.ht/2LcNuOJ).
В этом году DEV партнёрится с хактоберфестом: https://bit.ly/2lEYurq

Для тех, кто не знает, хактоберфест -- это мероприятие для поддержки и развития opensource, которое проходит в течение всего октября. Чтобы поучаствовать, нужно зарегистрироваться и сделать 4 пулл-реквеста на гитхабе. Те, кто успешно выполнят этот челлендж, получат футболку и набор стикеров.

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

Чтобы легче было найти подходящую задачу, мейнтейнеры помечают их тегом #hacktoberfest (https://git.io/fjjfg), присмотреться можно уже сейчас.
Ещё рамках хактоберфеста проходят встречи, которые помогут начать или продолжить контрибьютить. Например, в прошлом году pyladies spb проводили OpenSource sprint: https://bit.ly/2lAqQTU

У нас специальных задач для хактоберфеста (пока) нет, но всегда можно посмотреть метки "good first issue" (https://git.io/fjjBg) и "help wanted" (https://git.io/fjjB2)

#devto
Мы открываем регистрацию на RailsGirls в Спб 💎
https://vk.cc/9OpVnw
Делитесь с подругами (дочками, мамами, бабушками), у которых нет особого опыта программирования, но есть желание его получить 👩🏻‍💻

#railsgirls
Появился повод съездить на PyLadies, готовлюсь вот 😅
Это задачки с https://exercism.io/ , он хорош, чтобы изучить или вспомнить синтаксис языка. Можно выбрать трек с менторами, тогда ваши решения будут отправляться на код-ревью. Я пошла этим путём, когда решала задачки на эликсире, было довольно полезно.

Что касается питона, то я немного писала на нём, когда выбирала, куда уйти с php в конце 2000-х. Это были какие-то простые пет-проекты, не для прода. В то время руби больше привлёк своей красотой и культурой (?), сейчас пытаюсь вспомнить истинные причины 😅. С тех пор питоном особо не занималась, разве что иногда становится интересно что-то вроде "а как там работает множественное наследование" и т.д. и я поверностно читаю на тему.

Если нет повода, то не так интересно изучать язык, который относительно похож на мой основной.
Как Авди писал (http://www.virtuouscode.com/2015/05/08/a-personal-programming-language-roadmap/):
> Python: a fine language, but too similar to Ruby to be worth re-acquainting myself at this point.
Вот и у меня что-то похожее.
Сейчас возник некоторый исследовательский интерес, хотя глубоко изучать питон так и не планирую.
Btw, буду на RubyRussia в субботу, буду рада пообщаться
Сегодня начинается хактоберфест, приходите контрибьютить ко мне на рабочий проект.
https://github.com/thepracticaldev/dev.to/issues

Стек - ruby/rails, на фронтенде preact(это почти как реакт :) и ванильный js.

Обратите внимание на задачи с тегами - "hacktoberfest", "help wanted", "good first issue"
Есть теги и по технологиям, начинаются с "tech" (например, "tech: html/css")

Парочка задач от меня:
- Уйти от вызовов delay (специфичных для DelayedJob) и сделать вместо них ActiveJob'ы ==> https://github.com/thepracticaldev/dev.to/issues/3136
Почти всё уже сделано руками контрибьютеров, осталось несколько пунктов.

- Удалить старые методы, связанные с уходом от DelayedJob ==> https://github.com/thepracticaldev/dev.to/issues/2950

- Добавить дату публикации подкаста ==> https://github.com/thepracticaldev/dev.to/issues/3498
Люди вызывались делать, но результата не видно, поэтому смело можно брать.

Ещё можно обратить внимание на rubocop_todo и просто прогнать rubocop, я смотрю, опять там есть пара нарушений.
Во фронтенд я не так часто заглядываю, но там ещё тоже много возможностей отрефакторить или исправить код в соответствии с конфигом eslint.

Доки по установке в readme проекта и здесь ==> https://docs.dev.to/installation/
Если что, обращайтесь (@lightalloy)

#devto
Недавно сделали интеграцию DEV со стекбитом, напишу про неё.
Stackbit -- это приложение для быстрого создания JAMstack-сайтов. JAMStack - это альтернатива традиционным CMS типа вордпресса, как-нибудь напишу про него подробнее.
Stackbit интегрирует генератор статический сайтов (jekyll, gatsby, hugo, etc), headless CMS (Netlify, Contentful, etc) и инструменты для деплоя (Netlify) + делает для вас репозиторий (пока только на гитхабе).

В нашем случае DEV выступает в качестве CMS. То есть если у вас есть посты на DEV, можно зайти в раздел "интеграции" в настройках, нажать кнопку "Connect to Stackbit", выбрать тему и генератор, и через некоторое время получить готовый сайт, примерно такой: https://terrific-velociraptor-e1366.netlify.com/
Доработать его можно просто внеся изменения в репозитории на гитхабе. Я практически ничего не меняла, поэтому сайт выглядит убого :D

С технической стороны реализовано так:
- когда первый раз интегрируетесь со стекбитом, даёте доступ oauth-приложению
- stackbit получает доступ, берёт данные о постах по апи, делает свою магию, и создаёт сайт
- stackbit по апи регистрирует вебхуки(https://en.wikipedia.org/wiki/Webhook) на DEV
- когда кто-то обновляет или создаёт пост, мы смотрим, есть ли соответствующие вебхуки, и отправляем события с нужной информацией на url'ы этих вебхуков

Вебхуки и события -- это интересная тема в техническом плане. Но мы пока решили остановиться на самом простом варианте, а потом посмотрим, в какую сторону развивать фичу. Сейчас реализация похожа на ту, которая описана в статье https://benediktdeicke.com/2017/09/sending-webhooks-with-rails/ , (только без коллбеков! 😂)

#devto #работа
1 и 2 ноября мы провели RailsGirls. Наконец-то напишу о нём.
Для тех, кто не знает, RailsGirls — это воркшоп для девочек и женщин, на котором они могут познакомиться с Ruby, Rails и программированием в целом.
Большая часть мероприятий RG нацелена на абсолютных новичков. За 1-2 дня научить программированию и даже дать основы невозможно, поэтому основная цель — просто показать, что такое программирование, дать идеи, как и чему дальше учиться, как в будущем начать карьеру.

Мы начали подготовку за 2 месяца, мне казалось, что у нас очень мало времени. Например, Django Girls требуют подавать заявку на мероприятие за 3 месяца. У RailsGirls всё более расслабленно. Мы еле добились ответа от организаторок :D (Линды Лиукас), но в итоге всё получилось, и мы смогли добавить информацию на официальный сайт. Организаторки глобальной инициативы особо не контролируют проведение локальных мероприятий. Есть кое-какие инструкции, но основные решения нужно принять самим. Например, составить расписание и решить какие материалы брать для воркшопа.

Само мероприятие мы рекламировали не так много, в основном вк, в "своём" паблике (code_sisters), в "сестра сестре" и немного в телеграме. Оттуда информация разошлась чуть дальше. Этого хватило, чтобы на 20 мест мы получили 80+ заявок. Мы постарались в первую очередь взять тех, у кого меньше знаний в it, но больше мотивации. Часто это субъективные вещи, + вмешивается случайность, поэтому состав получился разнообразный.

При подготовке у меня не было возможности делать то, что привязано к офису и городу, поэтому я переживала, как всё будет в этом плане. Но здесь всё было хорошо (Спасибо, Катя 💙) В остальном мероприятие тоже прошло без больших факапов, хотя многое можно было сделать лучше. Мы получили положительные отзывы, но хотелось бы узнать больше о том, что можно улучшить с т.з. участниц.

А вот то, чему на мой взгляд стоит уделить больше внимания.

- винда и техническая подготовка
Я сама давно не работала с виндой. Перед воркшопом мы попробовали вариант установки с RailsInstaller, обнаружили возможные проблемы и нашли решения. Но прямо перед мероприятием мне приспичило использовать wsl (windows subsystem for linux) + стандартную установку rbenv+ruby+etc, а не волшебный скрипт RailsGirls (в моей группе). На воркшопе сама установка прошла неплохо, но под конец wsl начала тормозить и начались странные ошибки, например, рандомно слетали права у файлов, завершить пришлось не на самой весёлой ноте.
Если бы я поэкспериментировала с wsl заранее, возможно, знала бы о таких проблемах.
Я ставила руби на винду в 2008-2009, через mingw или cygwin, и всё отлично работало. Но сейчас мне это уже не помогает :D

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

- подготовка материалов
Мы взяли готовый туториал RailsGirls. Для первого раза это логично, готовить свой отняло бы много времени и сил, которые были нужны нам на решение других проблем. На сайте Rg есть туториал на русском, но он сильно устарел и пользоваться им уже невозможно. В будущем хотелось бы сделать свой перевод, т.к. не все участницы знают английский на достаточном уровне. Да, можно было бы сделать знание языка одним из требований, но на "нулевом" воркшопе не хочется отсекать людей по этому принципу. А вот собрать данные насчёт знания англ. стоило, чтобы более оптимально сформировать группы.

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

- внезапно не стало сил перед воркшопом
Это было сложно предвидеть, но так получилось. Пришлось тащить подготовку на минималках.

#railsgirls #моё
❤‍🔥11
- "понятно, что ничего не понятно" (для участниц)
Частая тема в отзывах на воркшоп, но это как раз нормально в начале обучения. Если учиться регулярно, то со временем понимания будет больше.

Для первого раза всё прошло хорошо, многие участницы получили положительные впечатления и хотят идти дальше.
В целом очень классный новый опыт организации, менторства и даже публичных выступлений
Подборка статей от Shopify о том, как они справляются с огромным высоконагруженным монолитом.
https://twitter.com/rhymes_/status/1197115938501472263

(узнаю кое-что из Domain Driven Design)
Особенно мне понравилась идея "modular monolith". Он сочетает плюсы микросервисной архитектуры (чёткая структура, разделение зон ответственности) и монолита (отсутствие сложностей взаимодействия сервисов между собой). Конечно, Shopify проделали (и делают) огромную работу, чтобы к этому прийти. Мало у кого есть такая возможность, пока приложение не достигнет их масштабов, но всё равно кое-что можно "взять себе".
Выступила на Pyladies 13.02 с рекламой Ruby #моё
Как искать удалёнку?

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

Ещё я устраивалась на все работы "по объявлению". "По знакомству" как-то не попадалось привлекательных предложений: поначалу их вообще не было, а потом требования к работе взлетели до небес :D

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

Вот что я использовала для поиска и для анализа рынка:
- хабр карьера (бывший мойкруг)
- каналы в телеграме:
- @Remoteit
- @remotelist (собирает вакансии с разных сайтов, может попадаться не удалёнка или удалёнка только в US и тд. Самих вакансий очень много, надо копаться)
- @rubyjob (подставьте канал с вакансиями по своему тех.стеку)
- https://angel.co/ (работа в стартапах, есть и удалёнка, и офис, в т.ч. с релокацией. Поиск не очень удобный - при выборе удалёнки может всё равно выдавать варианты с офисом)
- stackoverflow jobs (https://stackoverflow.com/jobs)
- всякие weworkremotely (https://weworkremotely.com/)
Ещё помогает подписываться в соцсетях на интересующие компании, к-е нанимают по интересующей специализации, и вообще заглянуть на их сайты.
Во-первых можно сразу увидеть вакансии, а можно и просто найти контакты и написать им, если сильно туда хочется.

Вакансии будут повторяться на многих сайтах, но всё равно есть смысл смотреть несколько источников.

В прошлый раз я искала работу в конце 2018. С этого момента прошло уже много времени, но мне кажется, что это было совсем недавно, ведь до этого в Эврон я работала 8 лет. Я смотрела вакансии в источниках из списка выше в течение нескольких месяцев, но апплаилась не так много: на пару вакансий с angel.co, stackoverflow jobs, напрямую в компании.

Также и в DEV я увидела объявление у них в твиттере (или ещё где-то) и просто заапплаилась. Процесс тогда был довольно быстрым, даже без собеседования: просто анкета, обсуждение в почте, мини-тестовое в виде анализа проекта. Надо понимать, что контракторская позиция несёт мало рисков для работодателя и легко было организовать тестовый период, да и вообще легко "выселить" с работы в случае чего. Тем не менее, когда нанимали новых сотрудников в этот раз (конец 19-го, начало 20-го) процесс был куда более долгим и структурированным, как для контракторов, так и для сотрудников в США.

#поиск_работы@anna_codes