Ответы пользователя по тегу Ruby on Rails
  • Можете оценить в часах время выполнения тестового задания на Ruby?

    @eliastro
    Первое задание - неудачное для мидла. Оно тривиальное, но при этом объемное. Минимум 8 часов, если делать норм(с тестами, с паттернами хотя бы уровня сервис обджектов). За 2-3 часа будет говнокод. Это задание для джуна. Если оно не будет оплачено, то мидл пройдет дальше мимо этой вакансии.
    Второе задание уже норм, и я бы его предлагал для мидла. Его можно прямо на собесе(порассуждать о вариантах реализации).
    Ответ написан
    Комментировать
  • На каком свете сейчас Ruby?

    @eliastro
    Чтобы оценить востребованность посмотрите вакансии на hh, moikrug, rubyjobs.dev и особенно канал телеграм @rubyjob
    Востребованность высокая, зп выше рынка в среднем по ИТ-палате.
    Из особенностей рынка - половина вакансий с возможностей удаленки. Но и там где предполагается офис, на деле готовы предложить удаленку (но не для джунов). Вопреки досужим мнениям(что только легаси проекты на поддержке), куча новых проектов пишут на руби.
    Особенно меня удивило, что различный корпоратив начал писать на руби (ростелеком, ржд, газпром, сбер и тд).
    Если будешь писать на руби, то велика вероятность, что будешь писать еще либо на голанге или эликсире. Т.к. в крупных проектах на руби распространено выносить высоконагруженные части в микросервисы на этих языках. Поэтому если перескакивают с рубей, то как правило это либо го, либо эликсир. Но чаще всего используют вместе, а не вместо.
    Ответ написан
    1 комментарий
  • Реализация уведомления по времени на ruby on rails?

    @eliastro
    Используйте sidekiq. В этом случае очередь задач будет обрабатываться параллельно. Настройте кол-во воркеров сайдкик исходя из нагрузки(посмотрите в админке). А также создайте несколько очередей. Та очередь задач, которую нужно обрабатывать как можно скорее - поставьте ей максимальный приоритет.
    Rescue - однопоточный. Он вам не подойдет.
    Ответ написан
  • Что выбрать для карьеры c# или ruby?

    @eliastro
    Если нравится руби, то его и изучай. Скорее всего потом ты все равно перейдешь на другие языки и технологии независимо от того, что ты выберешь (руби или с#). Работы на руби много, особенно учитывая соотношения кол-во вакансий и конкуренцию на рынке. Более того на руби ты легко сможешь найти работу удаленно при желании (как на западные компании, так и РФ), т.е. не ограничен рынком своего города или страны. А в C# удаленная работа скорее исключение, чем правило. Также в плане фриланса (upwork например), то руби гораздо предпочтительнее, чем C#.
    Ответ написан
    Комментировать
  • Как правильно добавить города (локацию) для пользователей?

    @eliastro
    Создаем 3 модели и связываемых их:
    class City < ActiveRecord::Base
    	has_many :users
    end
    
    class User < ActiveRecord::Base
    	has_many :posts
    	belongs_to :city
    end
    
    class Post < ActiveRecord::Base
    	belongs_to :user
    end

    Далее нам, например, понадобилось при выводе всех постов (экшен index контроллера PostsController) выводить еще и город автора поста. Тогда во вьюхе post index.html.erb вывод города - post.user.city.name. Пример реализации:
    <table>
      <thead>
        <tr>
          <th>User</th>
          <th>City</th>
          <th>Text</th>
          <th></th>
          <th></th>
          <th></th>
        </tr>
      </thead>
    
      <tbody>
        <% @posts.each do |post| %>
          <tr>
            <td><%= link_to post.user.name, user_path(post.user) %></td>
            <td><%= post.user.city.name %></td>
            <td><%= post.text %></td>
            <td><%= link_to 'Show', post %></td>
            <td><%= link_to 'Edit', edit_post_path(post) %></td>
            <td><%= link_to 'Destroy', post, method: :delete, data: { confirm: 'Are you sure?' } %></td>
          </tr>
        <% end %>
      </tbody>
    </table>


    Сам изучаю Рельсы. Может можно и более изящно все сделать. Но проверил - работает.
    Ответ написан