• Книга "Совершенный код" подойдет начинающим программистам?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Я бы ничего из этого не читал сейчас. Лучше время на практические навыки потратить. Вот потом, с годом-двумя реального опыта очень полезно. Потому что будет не просто чтение, а переоценка своего опыта. Я дулал вот так, а умная книга говорит что надо было по другому. Стоит об этом поразмыслить.
    Ответ написан
    Комментировать
  • Есть ли книги в которых создаётся проект?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Для руби. Туториал Хартла. Бесплатный, на английском языке постоянно обновляется и актуальный.

    В результате получится клон твиттера
    Ответ написан
    Комментировать
  • Пытаться изучить несколько технологий === стагнировать по обоим?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    В начале карьеры 2 раза менял стек с понижением ЗП и считаю это лучшим решением в своей карьере.

    Каша будет, если попытаетесь одновременно учить и бек и фронт и делать задачи и там и там.

    Если же выберете то, что Вам нравится, и будете каждый день работать в этом направлении минимум по 8 рабочих часов, все будет отлично.
    Ответ написан
    Комментировать
  • Как повысить свои навыки в построении архитектуры сложных приложений?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Старайтесь работать в компаниях и на проектах, на которых уделяют время написанию текстов. С тестами код легко рефакторить и можно пробовать довольно быстро разные варианты, сам быстро учишься.

    Но с книгой намного лучше. Вы выбрали отличную книгу, пробуйте внедрять паттерны из нее. Хотя бы в мысленных экспериментах
    Ответ написан
    Комментировать
  • Product manager с нуля, насколько реально?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    имхо, не тратьте деньги на курсы. Книга по канбану ,книга по скраму, книга по agile и идите на стажировку.
    Тратите баксов 50 на платные Jira, ADO, pivotaltracket и еще бесплатно trello и разбираетесь во всех их кнопках которые сможете натыкать.

    И Вы на голову будете выше всех остальных кто ломится в стажировку. Стажировка - не работа. Просто халявный способ войти в айти и надо обойти таких же халявщиков

    пол года назад примерно на пикабу видел рекламу курса какой-то популярной конторы на менеджера. Они там сквиз замутили, типа как бы ты, как менеджер, поступил в данной ситуации. Забавно, но там либо не было правильного ответа, либо нельзя было ответить однозначно. Все вопросы были говно. Вот и как после этого доверять таким курсам.
    Ответ написан
    2 комментария
  • Зачем мне dry-rb валидатор в rails приложении?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    dry-rb - холиварный стек, т.е. ответы на вопрос использовать или нет - как ответы на вопросе о вере. Каждый с опытом сам решит для себя. Если еще не решили, значит опыта маловато.

    Делайте так, как делает команда. Если команды нет, то проще не использовать. Если проект учебный - попробуйте и так и так.
    Ответ написан
    Комментировать
  • Есть ли аналог Django debug Toolbar для Rails (Отображение всех sql запросов при использовании приложения)?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Встроенной тулзы нет. Время запросов можно посмотреть в логах сервера. Но, можно установить newrelic, и запустить локально https://docs.newrelic.com/docs/agents/ruby-agent/f...
    Ответ написан
    Комментировать
  • Как добавить динамический метод к классу через модуль?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    require "active_support/concern"
    
    module HasAbilities
      extend ActiveSupport::Concern
    
      class_methods do
        def has_ablilities(*args, **options)
          args.each do |name|
            define_method(:"#{name}") do |value|
              puts "i can make action: #{name}"
            end
          end
        end    
      end
    end
    Ответ написан
    Комментировать
  • Куда расти в должности, не бросая программирование?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Вы можете развиваться в Т-специалиста. Это когда помимо основных технический знаний идут дополнительные. Они также могут быть техническими, в смежных областях. Тогда вы станете фулстеком. За это не всегда норм доплачивают, но это может быть интересно, как технарю.

    А можете построить такую же карьеру в доменной области и стать предметным специалистом. Легче всего это сделать, если ваша основная специализация машинное обучение. Но и других тоже возможно. Например разработчик-агроном, разработчик-логист, разработчик-автоматизатор бизнес процессов. В любых областях, в которых смоете применить IT рост по второй карьере неограничен, как и рост по ЗП. Я еще о в 2014 читал истории о специалистах в ML+логистика с ЗП 300к, что даже при просевшем в 2 раза баксе, считается норм зарплатой сегодня.
    Ответ написан
    Комментировать
  • Какие каналы про карьеру читаете?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Могу посоветовать книги "Голая Экономика" и "Резюме на миллион"

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

    Вторая книга как раз про то, как себя продать.

    Ну и как уже упоминал, без знаний задержаться не получится. Ищите roadmap по своему направлению. Будет план, какие задачи нужно решать для получения определенного опыта
    Ответ написан
  • В какой из стран СНГ лучше всего развита IT-индустрия?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Образование везде одинаковое. Платят больше всего в Украине. Налоги везде околонулевые относительно доходов.
    Ответ написан
    Комментировать
  • Экономика для чайника. Есть ли такая книга?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Как устроена экономика не знают даже экономисты с многолетним опытом исследований. Они лишь предполагают и сами в итоге делятся на школы и направления. Поэтому почитать одну книжку и найти ответы на все вопросы не получится.

    Голая экономика и Голые деньги от Чарльза Уилана. Очень интересно и доснупно написано. Но он глобалист-. После него полезно еще почитать Злые самаритяне и Как устроена экономика от Ха Джун Чхан. У второго автора здоровая критика глобализма и капитализма, чего нет у первого. Но материал более сухой и научный. Впрочем, после первых двух книг понять его не составит труда
    Ответ написан
    Комментировать
  • Как правильно использовать http persistent connection в ruby?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Попробуйте сначала организовать коннекшн пул, а потом в циклах брать свободный. Ну и thread быстрее чем форк. Смысл форка только если в внутри много трендов, а у вас максимум 10.
    Ответ написан
  • Почему не работает dropdown Bootstrap в Rails?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    sprockets и webpacker это всего лишь надстройки, которые решают пачкку проблем при работе с ассетами.

    Когда что-то идет не так, то алгоритм следующий:
    1. Создаете чистый прототип на HTML/CSS/JS + нужные либы
    2. С помощью dev tools браузера смотрите, что у вас не совпадает с тем, что генерят рельсы: версия библиотек(гемы и пекекджи могут иметь отличную от примеров), DOM path, сгенерированные скрипты, очередность применения javascript и так далее. Нужно понять в чем именно проблема.
    3. Читаете доку по конкретному инструменту, чтобы понять как заставить его работать в нужном способе. Ну или задаете тут же уже более конкретный вопрос. Типа вот когфиг такой-то, надо сгенерировать код такой-то, а генерится другой
    Ответ написан
    Комментировать
  • Есть ли смысл учить ruby в 2020 году?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Учить нужно то, что нравится. Разработка это творческий процесс. Если заниматься тем, что не нравится, то и спецом не станешь, и в итоге хорошую зп не получишь. Руби это рельсы. Посмотрите курс по рельсам, попробуйте повторить. И так же с питоном джанго и пхп лаварелом. Что понравится больше, то и Ваше.

    Кроме того, в итоге то, с чего начать, не особо важно. В разработке с 70х годов ничего концептуально нового не придумали. Разницы на примере какой технологии учить концепции нет. Главное чтобы это нравилос и было желание по 12 часов в день в это погружаться, понимать почему так а не этак решаются конккретные задачи.
    При высоком уровне сеньорити даже с ООП парадигмы перейти на функциональную дело пары месяцев. Когда опытный разработчик пользуется новым инструментом, языком или библиотеккой, это нельзя считать обучением. Ты читаешь описание библиотеки или инструмента, смотришь какие проблемы решаются по новому и уже знаешь, что там будет. Просто смотришь соглашения инструмента и все.

    Есть еще один большой плюс руби. При знании английского на b1 открываются западные вакансии с ЗП х2-3 от российских. А руби конторы в основном это работа напрямую с западным закакзчиком и прямым общением. Я так за 7 лет общения по 1-2 часа в неделю прокачал английсккий со шкокльного a2 до b1. Никакие правила дополнительно не учил, на курсы не ходил.
    Ответ написан
    Комментировать
  • Есть ли приимущества у Ruby перед PHP?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Работа должна приносить удовольствие. Почему бы не потратить часов 40 чтобы понять нравится оно вам больше чем php или нет? А что там умеет в итоге язык это дело десятое.

    Если говорить об отличиях, то у руби очень сложная внутренняя структура, которая позволяет писать невероятно выразительный код. Но, это все медленно работает и жрет кучу памяти. Только последние версии языка начали понемногу сокращать разрыв с тем же php или питоном
    Ответ написан
    Комментировать
  • Какое количество экземпляров одного rails приложения работает одновременно?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Rails потоко безопасное приложение, но само по себе не решает как оно будет работать. Может и так и так.

    Rails - rack совместимый веб фреймворк, который будет работать с любым rack совместимым веб сервером. А уже сервер решает как он будет масштабироваться. Unicorn только форками, но он сразу форкается, а не по запросу. Puma тоже форками, но в каждом форке еще несколько потоков.

    Поэтому перед Rails в проде ставят nginx который способен держать любое количество запросов и ждать пока руби освободится
    Ответ написан
    Комментировать
  • Почему переменная в моделе меняется?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    Потому что руби при создании объекта не копирует данные класса, а хранит ссылку на него. TYPES это константа класса, при ее изменении данные обновятся у всех объектов. В случае обычного класса Вам нужно было бы переопределить метод initialize с установкой нужной переменной, но для модели это делать не жлательно и лучше воспользоваться колбеком.

    Кроме того присваивание работает по ссылке, поэтому массив нужно именно скопировать

    class Book < ActiveRecord::Base
      DEFAULT_TYPES = ['Classics', 'Fantasy']
    
      after_initialize :set_default_book_types
    
      def book_types
        @book_types
      end
    
      def set_default_book_types
        @book_types = DEFAULT_TYPES.map(&:clone)
      end
    end
    Ответ написан
    Комментировать
  • Как ограничить поле ввода time на уровне модели?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    validates :time, :inclusion => { :in => (0..3600).step(15).to_a}
    Ответ написан
    Комментировать
  • Зарплата от количества опыта?

    c3gdlk
    @c3gdlk
    Ментор в http://rubyboost.ru/
    А что мешает удаленно пособеседоваться чтобы определить свой уровень и стоимость? Примерные требования Вилка 60-120. Но на 120 нужно не только квалификация, но и софт скилы. Умение отвечать за задачу, работать в команде, общения с продукт овнером. Знать всякие скрамы и аджайлы.

    При устройстве в аутсорс компанию можно просить сверху 100-300 баксов за хороший уровень английского.

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