Говнокодер соцсеть писал или как эффектно выебнуться на защите диплома
Короче, сап
# OP
05/07/21 Пнд 11:52:21
№
133161
1
"Ебать, я что, разве я чем-то хуже Пашки, Марка, Билла? Нет! Решено, пилю соцсеть нахуй!"
Так и началась эпопея длительностью в год. Сначала я на бумаге набрасывал, как это примерно будет выглядеть, как все это дело будет между собой связано и чем можно первое время заинтересовать целевую аудиторию. Затем набросал первичный дизайн в фигме (который позже был трижды перерисован и пересобран) и сверстан прототип. Это все в первый месяц разработки, дальше уже следовало определиться с цветовой схемой проекта, отрисовать в иллюстраторе логотип и иконки, ну, и поработать наконец с кодом.
Скажу сразу, написать с нуля за год на расслабоне в одиночку простое подобие социальной сети довольно просто. Так что если здесь есть студенты в айти, которым в следующем году писать диплом, то не ссы брать сложную задачу. Лучше начать разработку заранее, чем спидранить диплом за ночь (да, и такое у меня было).
В итоге было принято решение остановиться на аналоге тамблера (что в последствии было пересобрано в 4 раз и уже на тамблер похоже слабо) и выбрать за основную цветовую схему Оранжевый, белый, черный и блено-серый (на фон). А на счет организации алгоритмов - взял ajax и навесил на пыху пдо RedBeans. Удобная хня для работы с базой. И так, к защите диплома мы уже имеем:
- Функцию создания постов
- Комментарии
- Лайки
- Тренды (простейшая их реализация)
- Профили пользователей
- Подписки
- Чат (спизженный с сервиса ChatBro)
- Поиск
- Настройки аккаунта
- Восстановление доступа
- Уведомления на email
Как выяснилось для получения за защиту 5 с отличием этого было более, чем достаточно.
К слову, на пикче вы видите карточку пользователя на странице его профиля. В css-реализации карточка более, чем простая.
Далее был период стресс-тестов проекта и тестирований на проникновение. В стресс-тестах мы выяснили, что сайт относительно резво работает под нагрузкой, это несомненно плюс, а вот пентест показал дыры, о которых нам в колледже на лекциях никто и никогда не говорил. XSS-атаки. Я, честно говоря, пока не слил ссылку в паблики программистов с просьбой потестить более опытных, даже не знал о существовании данной дыры. Этим я хочу сказать, что не надо бояться просить потестить кого-то более опытного - это очень поможет в дальнейшем.
Дыры закрыты, отчеты о нагрузке и работоспособности составлены, можно работать дальше. Так как я в первую очередь говнокодер, то мне теперь надо переписать алгоритм генерации ленты, записи данных в бд и прочий замут. Навести марафет и закрыть кучу дыр разом. Заметка на будущее: тщательней продумывай связи, дядь.
По итогу, имеем написанную с нуля (в прямом смысле) соцсеть, которая больше похожа на Яндекс.Дзен на минималках, или какую-нибудь борду с живой общей лентой.
Кстати, можешь тоже здесь поделиться своим опытом, был бы очень признателен.
Всем пис)
>колледже
нихуя себе, в россйских шарагах теперь цукербергов учат
Вообще, сфере веб-разработки я уже года два как (хотя до сих пор не приходилось ни с React, ни с Vue, ни даже с Laravel познакомиться тесно). Этот проект был написан на связке, которая актуальна была, наверное, лет 10-12 тому назад - js (jQuery/Ajax) и php7.
Вообще, стоит отметить, что с нуля написать работоспособную, пусть и маленькую, соцсеть, довольно просто. (Главное со связями в бд и коде не запутаться). Более того, почему я именно говнокодер? Я ни разу не пользовался Git. Нет, конечно, для диплома в шараге написать такой проект - самое то, даже намного круче ожиданий приемной комиссии. Так что, если на этот тред наткнутся без пяти минут выпускники, то они будут иметь пусть и достаточно кривой, но пример дипломной работы. Так что, почему бы и нет. Если кому интересно, могу объяснить то, как эту какаху писал я (а писал я ее один).
з.ы.: если здесь есть хорошие пентестеры, то убедительная просьба, напишите потом отчет о том, что и где вы поломали. Исправлять все равно потом мне.
Сам проект (не осудим говнокодера): https://skvotter.com
Мне не очень нравится то, что у тебя эндпоинты - имена файлов.
Нет адаптации.
Много кривой вёрстки она кривая везде, куда бы я не ткнул - хедер ведёт себя как попало.
Ошибка в консоли.
Организация файлов трешовая - все стили в header.css, в чём прикол?
Нет оптимизации ресурсов - ни лейзи-лоадинга, ни серверного сжатия - ничего вообще.
Это действительно выглядит так, словно писалось лет 10 назад, где не слышали ни про сборщики для фронта, ни про ui\ux.
Да даже логотип в пнг, хотя такой простой рисунок замечательно можно было запилить в svg и не плакать кровавыми слезами от его шакальства.
Лень смотреть на внутренний функционал, но судя по тому, что вижу на главной, такой же сайт на ноде можно написать за неделю-две.
Я получал образование далёкое от IT, полтора года опыта с момента старта самообучения и я прям вообще не понимаю чем ты занимался в вузе до этого и как так интересно писал сайт ГОД
, что не нагуглил даже самые-самые базовые вещи. Ну допустим тебе совсем наплевать, но зачем-то же ты спрашивал про уязвимости, что-то правил по мелочи? Короче странная ситуация, я не понимаю.
А еще больше смысла такой тред создавать в /pr, тут тебе мало кто ответит.
Ок чел, а я на втором курсе имиджборд написал.
Заходи в webach в телеге