Сегодня у нас появилась возможность по-настоящему погрузиться в наш проект, и я, честно говоря, очень взволнован этим! Один из членов моей группы, Луиза, добился огромного прогресса, экспериментируя с twitter API, и мы смогли увидеть, как число твитов увеличилось! Это чертовски круто! Мы протестировали его со словом салат (о котором не так много твитов), и буквально, как только Аманда нажимала клавишу ввода, наш счетчик увеличивался. Так круто!

Мы хотели быстро получить много данных, поэтому тестировали слово «Трамп». Каждую секунду о нем пишут сотни твитов. Одна вещь, которая действительно крута, мы даже можем видеть твиты, когда они приходят.

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

Одна вещь, которая, как я думал, может сработать, — это цикл, который прерывается каждые 50 твитов, обновляет счетчик и начинается снова. Самая последняя итерация кода:

def tweet_count(hashtag)
  @client.filter(track: hashtag) do |tweet|
    @tweets << tweet.text
    if @tweets.count >= 50
      @counter += 1
      @tweets = []
    end
   end
 end

Мы думали, что если бы мы увидели счетчик в представлении, он бы обновился без необходимости вызывать что-то, что бы его отображало. Однако Rails не любит бесконечные методы.

Я собираюсь изучить sidekiq, который потенциально может помочь, но завтра мы просто заглушим функциональность Twitter и сосредоточимся на javascript и CSS позади растущего дерева в лесу.

Что я узнал

  • Тонна об использовании внешних данных в приложении
  • Использование моделей Rails
  • Начинаем использовать Haml для интерфейса

На чем я хочу сосредоточиться

  • CSS-анимации — я их никогда не использовал!
  • Ajax для обновления номера без перезагрузки страницы
  • Изменение размеров объектов на основе числа

Вещи, с которыми я борюсь

  • Это интеграция с твиттером. Мне бы очень хотелось, чтобы он работал сегодня.

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