Giter VIP home page Giter VIP logo

weather_collector's Introduction

Hi there! Welcome to my GitHub profile

My contacts:

Telegram: Ibyatov_R
e-mail: [email protected]


🛠️ Languages and Tools :

Python Django DjangoREST Postman GitHub SQLite Postgres Docker Nginx Gunicorn


🔥 My Stats :

GitHub Streak


Top Langs


Jokes Card

weather_collector's People

Contributors

talgatovich avatar

Watchers

 avatar

weather_collector's Issues

Фидбэк

Привет!
Оставлю фидбек по тестовому здесь:

Что было хорошо:

  • Оно работает :)

Что было плохо:

  • Код выглядит "одноразовым", не готов к расширению, сложен в поддержке (быстрее переписать заново, чем вносить изменения в существующие функции)
  • Не обрабатываешь ответы API. Ответ может вернуться с кодом 40х, 50х и тогда все сломается
  • Sqlite вместо postgres.
  • Захардкодил имена городов в скрипт. Было бы лучше хранить их или в БД или в файле. Сейчас, чтобы изменить список, нужно будет вносить изменения прямо в код.
  • Принты вместо логирования. Если не хочется заморачиваться с настройкой нативного логгера лучше использовать, например, loguru .
  • Не закрываешь исполняемые конструкции.
  • except Exception :) если мы работаем с БД бери ошибки из psycopg2.exceptions. Сейчас ты обрабатываешь вообще все ошибки. Причем не логируешь, ошибки и не передаешь параметры произошедшего. В таком сообщее будет тяжело разобраться. Плюс 'Сервер не отвечает или что-то пошло не так' в функции, где может возникнуть исключение про сохранению данных в БД.

Что можно сделать лучше:

  • Любой код должен покрываться хотя бы "зелеными" кейсами
  • В ридми можно было бы предложить варианты обхода ограничений API (например, можно взять платную подписку, где за раз получится вытащить данные по всем городам).
  • Расписать, как можно развивать этот код

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

К сожалению, я не готов пригласить тебя на интервью, надеюсь, что этот фидбэк поможет тебе с дальнейшим развитием и получением оффера :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.