Бог web-программирования
Нужно было что то на сайте OpenCarta поправить, а нашел вот этот вот. Вот из-за такого и шутки про php и программистов на нем
https://ibb.co/ydKfkBw - оригинал
Нужно было что то на сайте OpenCarta поправить, а нашел вот этот вот. Вот из-за такого и шутки про php и программистов на нем
https://ibb.co/ydKfkBw - оригинал
Итак, прошло 4 дня, эти 4 дня я совмещал разработку с навалившейся кучей дел(решил отдохнуть недельку...), в итоге в попытках освоить сразу толпу разных фреймворков я окончательно в них запутался и сделал монстра франкенштейна, но я обещаю исправится и делать следующие странички качественней :З
Также со след. недели я выхожу на новую работу и времени на разработку сего проекта станет куда меньше, зато качество кода станет получше.
Технологическая часть:
Итак, какие резиновые фалосы продолговатые предметы я пинал эти 4 дня, в основном это была геморная работа с единственным View, чтобы все это красивенько выглядело и красивенько работало.
Но начну я с обновлений базы:
Схема разраслась еще парой таблиц, вынес описания в отдельную таблицу, также будет изменена связь статистик и атрибутов.
На очереди добавление таблиц заклинаний и умений.
Было написано еще пару ХП на вставку и выборку, а также пару запросов на хардовые Insert.
Касательно представлений и кода в приложении.
Вот как-то так сейчас выглядят Select,ы на View.
А вот как-то так обилие скриптов под них:
Я прекрасно понимаю насколько дерьмово не очень написана эта View, так что если вам стало бугуртить - знайте мне бугуртит также.
Это, в принципе, первая веб-форма за мою никчемную жизнь и она хотя бы работает и возвращает и делает то что мне нужно(ну пажалуйста я не так плох).
Следующий экземпляр связанный с классами, будет лучше, обещаю )
Как все это выглядит:
Переходим к вкусностям, как же выглядит вся эта форма?
Ну вот как-то так, когда вы только зашли, не обращаем внимание на текст, он был сделан для отладки и примера, в дальнейшем он будет меняться и изначально отображаться не будет.
То же самое касается кнопочки "Продолжить".
Дальше идет небольшая магия, выбрав расу вы смените этот текст(логика под это уже написана, я жду пока человек занимающийся описаниями их закончит, чтобы я мог без лишнего гемора вкорячить их в код и базу) и у вас появится непосредственно выбор типа расы.
В выборе подрасы будут исключительно те, что доступны вашей расе, грубо говоря выбирая дварфа, в типах расы у вас будет отфильтровано: "горный дварф,холмовой дварф, дуэргар". То же самое касательно других рас.
Соответственно при нажатии на кнопочку "продолжить."
Вы отсылаете выбранную вами расу и ее тип на сервер, в ответ же он возвращает вам новую View с выбором класса.
Тут я пока ленивая жопа остановился
Описание воина будет, также как на предыдущей странице в правой части.
Касательно уровня, ниже будет таблица, которую я себе представляю примерно так:
Вот как-то так за 4 дня.
Также извиняюсь перед теми кто предлагал мне помощь и кому я не отписал, господа я только починил телефон, не было возможности, да и не знаю я что на вас свалить + я пока не подключал проект к хабу, но за предложения спасибо.
Также все слова вроде: "Темное зрение" будут ссылками на справочники, которые скорее всего будут тупо копипастой описания с книги персонажа, вообще все эти справочники и прочую ересь описывает один человек, причем делает это сразу в HTML формате, поэтому подобные свистоперделки я предусмотрю логикой, но появятся они лишь когда он закончит работу.
P.S. "шо за изичный и бревенчатый билдер" - господа, я создам сначала логику и базу на уровне бревенчатого билдера, а потом уже вы сможете создавать собственные расы, классы(да я планирую этот функционал), но сначала на базе Predefine я сделаю билдер для лалок(вроде меня).
Вряд ли чушь, которую я буду здесь нести будет вам интересной, однако подобные отписки и ваша реакция способна смотивировать меня не забрасывать работу =)
Сначала небольшая предыстория.
Не так давно, один мой старый друг, в поисках и генерации идей на тему "чего бы такого поделать" предложил себя в роли ГМа в D&D. Про D&D все мы слышали, но никогда не пробовали и даже не разбирались, идею все поддержали и было решено начать некий курс подготовки по пониманию того что нужно выучить и т.д.
Добравшись до листов с персонажами, я понял что нужно много считать и постоянно бегать туда-сюда по руководству, при этом сам лист при повышении уровня скорее всего довольно быстро придет в негодность, особенно если заполнять его ручкой, а карандаши - просто нет.
Собственно наткнувшись на пару билдеров в интернете, я оценил их ущербность, пару дней гугла, поиска чего-то вменяемого и единственный нормальный и полный билдер который я нашел - содержится в Excel файле.
Excel на макросах, выколите мне глаза Не то чтобы это было проблемой, но как телу технологий, мне подгорело.
В связи с переходом на новую работу, мне также нужно было быстро изучить ASP Net Core, EF Core и прочие свистоперделки веб программирования.
Собственно, так и родилась идея - "сделать нормальный билдер для страницы персонажа, рас, классов и прочей чепухи, с полным не ограниченным функционалом, легким доступом к описанию, блекджеком и шлюхами свистоперделками."
Отступление - господа, я лишь начал осваивать веб направление, понимаю что можно написать лучше и быстрее(особенно быстрее), но все решения я ищу сам и это занимает большую часть работы(%так 80), да гугл наше все.
Первые 3 дня работы:
Начал я с описания классов персонажа, самого понятия "класс", раса, подраса и прочей чепухи.
Это не модели для работы с EF это классы, для внутренних расчетов и насчетов в памяти, для более удобной выдачи и поиска информации.
Практически весь следующий день ушел у меня на создание непосредственно базы данных, было создано уже 6 таблиц, несколько хранимок, среди которых хранимки на создание самой базы и заполнение ее первичными данными, так и на выборку, вставку данных.
С помощью Scallfold я мигрировал модель с базы на приложение, дальше модель ведется руками.
Был создан контроллер, с ним было много возни, ведь именно туда с помощью DI мне пришлось закидывать контекст базы и учить ее работать с выборкой ХП, также была создана сущность под выборку данных из ХП.
Был создан новый Layout и созданы представления(с которыми я как раз сейчас работаю).
Что ты пишешь какую-то чепуху непонятную, нам бы посмотреть что ты напилил.
Отвечаю - на самом деле большая часть того что я написал скрыта от ваших любопытных глаз и находится на уровне внутренней логики работы, вы не увидите запрос к базе, не увидите выборку и сохранение данных, куда они передаются и где хранятся(но это не значит что этого нет).
Что есть - базовая пресет страничка MVC приложений, с одним измененным именем.
Это уже сам сайт если чо.
А вот и сама вкладка.
Собственно с этими Select я долго маялся, логика такая:
Из базы подтягиваются базовые расы и их типы, все эти данные хранят на сервере.
После того как вы выбираете одну из рас, для нее подтягиваются запросом ее типы.
На этом пока все, сейчас работаю с выбором типа расы и заполнением опций этого селекта.
Также уже готовы описания, план выводить их в правой половине странички для выбранной расы и снизу для типа этой расы, описаний будут краткими и в основном говорить о бафах к характеристикам.
Будет кнопочка "подробно" и вы сможете прочитать о вашей расе или ее типы куда больше информации.
Спасибо, если есть вопросы по реализации или еще что-то пишите.
Если это вообще кому-то было интересно -_-
<Пролог>
Недавний пост о сайтах натолкнул меня на мысли что мы просрали современный веб, а позже эта кипа ненависти вылилась в этот пост. В этом посте я хотел бы рассмотреть много разного начиная от скриптов генерации заканчивая сраными проверками. Пост полон ненависти, и если вы не хотите портить настроение то лучше не читайте. А всех кого тоже волнует эта проблема прошу к чтению.
</Пролог>
<Скрипты>
Ну это классика. Они с одной стороны улучшают сайты, с другой убивают их напрочь. Одно от другого отличается лишь дозой.
С одной стороны нам теперь не надо постоянно перезагружать сайт скрипты обновляю нужный контент сами и экономят время.
Но с другой… они делают сёрфинг в интернете просто ужасным. Все эти всплывающие окна, напоминания, отслеживание положения курсора, анимации… море их. Кому они нужны? Если я пришёл на сайт получить какую-то информацию то мне глубоко насрать что там и как крутится и анимировано.
Всякие фоновые процессы инициируемые этими скриптами могут неплохо прогружать проц и при этом не нести для пользователя какой либо пользы. Это снижает автономность мобильных устройств, замедляет загрузку, но всем пофиг… главное есть анимации иначе не модно.
О самих скриптах тоже многое можно сказать. Ведь не все прогеры умеют в хороший бек и фронт. Некоторые сайты нагромождены костылями и велосипедами так заботливо оставленными нам программистами… Но это уже другая история.
<Трекеры>
Ну это вообще. Они есть везде. Их как говна. Они следят за всем вашим действием лишь для того чтобы владелец сайта мог дороже продавать рекламу. Они работают в фоне, грузят проц но всем насрать ведь тупые юзеры не будут разбираться что там и где грузит. И ладно было бы по одному трекеру на одном сайте, так нет, их там по 10 штук напихано и только попробуй их залочь, тут же посыпятся требования отключить блокировщики.
Что уж тут говорить о какой-то приватности в интернете если отпечаток вашего устройства можно сделать при помощи особенностей отрисовки на вашем конкретном устройстве (эта хрень работает везде, какой бы режим инкогнито вы не включили). Сайты знают о вас всё и как минимум меня это бесит. Мне нахрен не сдалась эта таргетовая реклама, но от неё хрен избавишся.
Раньше на сайтах было много разного говна (в виде рекламы), но это уже перебор как по мне.
</Трекеры>
<Всплывающие окна>
Всякая срань навроде чатов, инфы о куках (они есть у всех сайтов и смыла в этой плашке вообще нет), подписки и прочая ебола. Она нахрен никому не сдалась но при этом её активно пихают куда попало лишний раз засирая и так малое место с полезной инфой. Самая проблема в том что они именно бесят, они не покоятся где-то в уголке сайта а разворачиваются чуть ли не посредине экрана. Особенно это бесит это при сидении в инете со смартфона, там их просто так игнорить уже не получится и конечно же они выскачать в самый неподходящий момент. Ух с%ка.
</Всплывающие окна>
<Потребление траффика>
Всё это говно может потреблять просто конские объёмы траффика. Хрен с ним с десктопом, но ведь мобильные устройства соединённые с интернетом посредством лимитных соединений также загружают всё это говно, тратя лишний траффик. А ведь не везде есть 4G. Знаете как бл% весело жать загрузки тяжёлого сайта через какой-то сраный 3G со скоростями диалапа(30-40kb/s).
</Потребление траффика>
<Производительность>
Говоря о смартфонах и прочих мобилках хочется вернутся к теме нагрузки на проц. На мобилках выполняются всё те же скрипты, и если смартфон не топ последних нескольки лет, то всё приплыли.
Жди пока загрузится и отработают все скрипты, так и проц перманентно под сотку забит, батарея при таком сёрфинге улетает вмиг, а смартфон греется как печка. А со старых устройств раньше 2012г сидеть вообще невозможно. Тыц пыздыц.
</Производительность>
<Потребление памяти>
А оперативки это всё дело жрёт так пиздец. На компе нужно минимум 4Gb чтобы открыть хотябы 25-30 вкладок, иначе системы уходит в своп и привет тормоза. Причём на сайтых без такого обилия скриптов дела обстоят всяко получше, но не настолько что прямо хорошо. Излишняя любовь к CSS и напихиванию картинок в хайрезе тоже делает своё дело.
</Потребление памяти>
Ну и естественно возникает вопрос как с этим говном бороться. Ну кроме как пи%%% палками таких разрабов с их любовью к скриптам остаётся ещё несколько вариантов.
Либо лочить скрипты на стороне клиента (NoScript, uMatrix, Ghostery).
Либо пропускать траффик через сторонние сервера (Типа opera turbo и.т.п.)
Если у вас есть свои варианты как от этого избавится пишите.
И ведь если правильно дозировать скрипты этого можно было избежать, но нет...
Всё! У меня больше нет слов. Я прогорел.
</Скрипты>
Начал замечать довольно внушительные зарплаты у UI\UX дизайнеров и дизайнеров интерфейсов и никогда не мог понять - почему, думал просто модно сейчас так, сам работал просто граф.дизайнером... вообщем не углубляясь в историю... начал изучать фигму, взял для набивания руки проект по созданию личного кабинета...
после выстраивания структуры(см рис. 1), когда пришел домой - положил пакет с продуктами в ящик с одеждой вместо холодильника, когда сообразил, что сделал - пронеслась мысль "а не зря вы едите свой хлеб".
Уважаемые пикабушники!
30 лет назад была основана Всемирная паутина. Сегодня, она - наша альтернативаня реальность. Кажется, мы проводим в ней времени едва ли не больше, чем в реальной.
Но, всего лишь 30 лет назад, её, считай, что не было. По крайней мере для простого обывателя.
Но как выглядел интернет на заре своего существования? Если вам это интересно - этот пост для вас.
Театр начинается с вешалки, а интернет - с устройства, которое вы используется для просмотра его содержимого.
Так выглядел первый компьютер, на котором удалось запустить веб-сервер, а также написать и открыть веб-страницу:
Тот самый экземпляр! надпись на наклейке:
This machine is a ser.
DO NOT POWER DOWN!!
Перевод:
Эта машина - сервер.
НЕ ВЫКЛЮЧАТЬ!!
Это NeXT Computer. Был представлен в октябре 1988 года, цена - 6,500 долларов (13,900 по нынешнему курсу). Да, в те времена почитать новости в интернете было бы дороговато! Работал на NeXTSTEP OS. Большинство людей сегодня скажут, что это ноунейм, так как Windows и MacOS давно оставили её позади. Эх.
Кстати, для комфортной работы с интернетом требовалось всего 8Mb оперативной памяти (и тут я вспомнил, как Chrome тормозит на моем компьютере с 8Gb, и чуть было не пустил слезу).
Для выхода в интернет использовался браузер WorldWideWeb (тоже первый в своем роде).
Выглядел он весьма просто, но для тех времён - чудо программирования. Интерфейс напоминал офисную программу: чтобы открыть сайт, нужно нажать Document - Open ...
Скриншот интерфейса:
Первые сайты изначально выглядели не так, как мы привыкли их себе представлять. Они были статичными (страница выглядела одинаково для всех в любой момент времени).
Для того, чтобы наглядно это продемонстрировать, я покажу вам, как выглядел первый в мире веб-сайт. Вот он:
Это кеш одной из его страниц. Изначально сайт содержал инструкции по установке веб-сервера, использования обозревателя, настройке сети и другие технические детали.
Кстати, благодаря Европейской организации по ядерным исследованиям (в их стенах, собственно, и запустили первый в мире сервер), браузер можно попробовать и сейчас - без компьютера на NeXTSTEP OS, бесплатно, без СМС и регистрации.
Да, Pikabu в окне этого браузера совсем не торт.
А Википедия "бодрячком". Гиперссылки, правда, тогда еще не придумали, поэтому они не работают.
В предыдущих абзацах я писал про первый в мире сайт. А как же его найти? Каким был первый в мире поисковик? Так вот: первый в мире сайт и был первым в мире поисковиком. Со временем пополнялся новой информацией, среди которой были также ссылки на все новые и новые полезные ресурсы. Тогда их было мало, поэтому, актуальный список было легко формировать и поддерживать вручную. Со временем, количество сайтов росло, и возникла необходимость автоматизировать этот процесс. Первым поисковиком был не сайт, а приложение Archie. Но и оно было поисковиком лишь в некотором смысле. В привычном нам понимании, оно лишь собирало воедино списки, уже составленные вручную и опубликованные на других сайтах. Первым "тру" поисковиком был ALIWEB.
Вот так выглядел наш герой:
ALIWEB искал и индексировал все сам (с помощью робота Webcrawler), без архивов и списков. И делал это до того, как это стало мейнстримом!
Да-да, Google, Yandex, DuckDuckGo тогда еще не было! Они, к слову, появились позже (Goolgle в 1998 году).
В комментариях предлагаю поделиться мнениями о том, как интернет изменил наши жизни (если вы олдфаг). Ну, а те, кто не помнит себя без всемирной паутины, рассказывайте, чего вы не смогли добиться из-за Вк и прочих таймкиллеров=).
P.S.: Если вам нравятся читать подобные заметки, могу сделать более подробную, наполненную картинками и фотографиями, статью о первых в мире поисковиках, браузерах или компьютерах.
Одна вакансия, два кандидата. Сможете выбрать лучшего? И так пять раз.
Да, знаю, такие как я уже кому-то надоели, но, может быть, кто-нибудь подскажет:)
Решил стать web-программистом, уже точно уверен)
Но есть вопросы к тем, кто через это прошёл и может посоветовать
1. Если ты хочешь им стать, то обязательно поступать на него? Возможность у меня есть, но от многих слышу, что это трата времени
2. Что начать изучать (желательно с источниками), чтобы бесплатно и хотя бы на Джуниора, или чтобы я мог выполнять заказы с фриланса, я знаю основы html, css, как устроен интернет, собираюсь дальше учить js, но не рано ли? Может быть, основ по html и css недостаточно?
Хотел бы прочитать ваш рассказ о том, как вы начинали, что учили и до чего дошли:)
Очень прошу помочь, для вас это пару минут, а для меня несколько месяцев или возможно вообще пропадёт мотивация и пойду грузчиком в Ашане работать, а ведь мне 15 лет, самый возраст, года идут(
Буду очень благодарен!