Домашни > Време е да помислите за проектите си! > Решения > Решението на Амира Емин

Резултати
0 точки от тестове
8 точки от учител

8 точки общо

0 успешни теста
0 неуспешни теста
Код

  1"""
  2[Title/Звание]
  3Weather Reality Check / Seems Like a True Weather
  4
  5[Description/Обрисовка]
  6Уеб приложение, чиято основна функция е да показва информация за времето на определно място,
  7която информация може и да е грешна и просто да си "играе" с нервите на регистрирания потребител,
  8в зависимост той в какво настроение е. Ако е в добро или неутрално, ще му го развали, ако е в лошо, 
  9ще се опита да го "оправи", доколкото е възможно. Гостите могат само да си гледат прогнозата за 
 10времето, nothing fun in that.
 11
 12[Functionalities/Надарености]
 131. Поддържа регистрирани и нерегистрирани потребители, като всичките имат достъп до основната 
 14функционалност – да въвеждат име на град/място по света и да получат точна информация за времето в момента.
 15
 162. При регистрация, или на по-късен етап, регистрираните потребители могат да добавят локации към 
 17"My locations/places", като в съответната секция в профила си, могат директно да гледат какво е 
 18времето на тези места. Правилната прогноза за времето.
 19
 203. Ако има повече от едно добавени места, има опция за селектиране на еднo такова като Top place, или
 21за коя локация да се показва информация в началната страница при вход.
 22
 234. Всички потребители могат да виждат дневен fun fact, който ще се поакзва някъде из страницата.
 24
 255. След като регистрирания потребител влезне, първата страница, която му се показва (или pop-up, ако успея
 26да направя), е приложението да го пита нещо от рода на "Как си днес?", "Какво е настроението?" или да го
 27накара да напише просто някакви думи, с които да се определи настроението му - позитивно, неутрално или 
 28негативно, и в зависимост от резултата, ще му се покаже прогнозата за времето за същия ден за избраната 
 29топ локация. Ако няма такава, се показва за случайно, може и избрано по подразбиране място по света.
 30-- Ако настроението е положително:
 31Прогнозата, която му се показва, може и да е грешна (цялата или част от нея), като ще има бутонче,
 32което при натискане, ако е грешна, ще се показва съобщение или надпис от рода на "He he, my bad, this is the
 33actual weather", като това отново може да е грешна прогноза. Показване на грешна прогноза се случва  случаен 
 34брой пъти (например от 1 до 10).
 35--Ако е неутрално:
 36Прогнозата пак ще е същата като при добро настроение, с различни съобщения най-вероятно, и евентуалното 
 37"пощадяване" може да е намалената бройка за възможностите за грешна прогноза (евентуално). Chances are 50/50
 38-- Ако е в лошо настроение, приложението "решава" да не бъде лошо и няма да го лъже за прогнозата за времето.
 39(Или само веднъж може with the most outrageous forecast for the day, но това не съм решила все още дали да го
 40включвам.) 
 41Като бонус, с надежда да се подобри настроението му, ще му се предостави още един (или няколко) случайно 
 42избран забавен факт.
 43
 446. При регистрация, потребителят има опции да избере за какво иска да получава имейл на личната си поща:
 45-- за прогнозата за времето на топ локацията си
 46-- само за дневния забавен факт
 47-- и за двете
 48-- за нищо
 49(-- дали ще вали през деня, което е почти същото като първото)
 50
 517. Потребител ще може да гласува всеки ден за точността (accuracity-то) на прогнозата, която получава, 
 52защото все пак и официалната прогноза не винаги е напълно вярна. Някъде в началната страница, ще има показана
 53средна оценка от всички събрани гласове от потребители, видима за всички.
 54
 558. Ако даде прекалено ниска оценка за точност, прогрмата ще го пита дали е сигурен, че е стигнал до и гледал
 56правилната прогноза за времето, а не някоя от фалшивите такива.
 57
 589.* При търсенето на град/локация, да има опция и за избиране върху карта. (Ще се опитам да го направя със
 59сигурност, но не съм сигурна дали ще успея.)
 60
 6110.* Да можеш да bet-ваш за какво ще е времето днес (преди да му се покаже прогнозата) или утре (друг ден), и 
 62да събира някакви точки ако е познал (в рамките на няколко градуса). Ако има съмнително много последователни 
 63правилни залога, програмата да го "набеди, че ѝ изневерява" с друго приложение за прогнози и да му забрани 
 64достъп до залагане за няколко дни, и евентуално в тези дни, винаги да го "лъже" няколко пъти за времето, или да 
 65увеличи бройката лъжливи прогнози.
 66
 67----- Ако трябва да се усложни с още функционалности (или ако имам време за повече), бих добавила и следните: -----
 68
 6911.** Ако много му е харесал фактът, потребителят да има възможност да си го запазва в профила (колекция or 
 70something), като спрямо запазените, ще внимава програмата да не му дава повтарящ се факт (тъй като ако е на случаен 
 71принцип, има възможност да се падне такъв, който вече е виждал)
 72
 7312.** Да има възможност да следи времето за определено място за определена дата. (ако има такава функционалност)
 74
 7513.** Потребителят да има възможност да предлага факти или шеги, и ако се одобрят от Админ, да могат и те да се 
 76показват с другите, като отново по случаен начин се определя.
 77
 7814** Да можеш да изпращаш на някакъв имейл (или друг потребител, но по-скоро имейл), прогноза за дадена локация, или 
 79дневния забавен факт.
 80
 8115.** Всеки потребител да може  да оценява the enjoyment the app gives him, и да се показва средна оценка и от това.
 82
 83-----
 84
 85[Milestones/Възлови точки]
 86Контролер за обработването на логиката
 87Свързване с Open Weather Map за информация за времето в момента
 88Свързване с API-то за фактите
 89Анализатора на настроения
 90* Връзка с geopy, ако направя да се избира точка от картата
 91Модул за изпращане на имейлите
 92
 93[Estimate in man-hours/Времеоценка в човекочасове]
 9450-70 часа
 95
 96[Usage of technologies/Потребление на технологии]
 97Django
 98requests - за работата с API-тата
 99OpenWeatherMap API
100за фактите - uselessfacts.jsph.pl 
101за анализ на настроенията - SentimentIntensityAnalyzer from vaderSentiment.vaderSentiment
102за имейлите - smtplib и ако ще има scedule-ване - schedule
103за картата - geopy
104CSS
105
106Мисля, че описах каква ми е идеята доста подробно, като някои неща, относно функционалностите или 
107технологиите, които ще използвам, могат да се променят, ако сметна за удачно, или Вие имате някаква 
108забележка към тях, но за сега са тези. Отворена съм към критики и предложения. :)
109"""


----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK

Дискусия
Георги Кунчев
03.01.2024 13:38

Идеята за сайт, който дава грешна информация, ми се струваше абсурдна, но с допълнителните точки, с които си развила, мисля, че е удачно. Става. Имаш доста функционалност в бекъп списъка си, някои от които ми харесват, но са функционланости за сайта, които няма да визуализират много нови познания. Бих препоръчал да помислиш за някакъв експорт на файлове със статистика, или пък генериране на графики с история в бекенда, които сервираш на фронтенд-а. Просто още няколко вида функционалност, която обаче лежи на други технологии и похвати и визуализира повече умения.
История
Това решение има само една версия.