Toxic_Cat

Toxic_Cat

[смотрит] [посмотрел] [планирует] [бросил]
Дата регистрации: 31 июля 2011 года
Последний раз видели: 30 декабря 2022 года в 20:08

Комментариев: 3010
Симпатий: 83450
Рейтинг: 113164 (16% от ТОПового человечка)

Звание: ТруЪ-отаку
ТОП 9
Группа: Администратор
Пол: Мужчина

Просто - кот.


Последние комментарии

7 сентября 2022 года 01:12, рейт: 2

Итак, последняя инфа. Я забуксовал. Да, у нас уже есть готовая реализация регистрации и логина. Но у неё есть минусы, это проблема с деплоем на сервера. В данный момент на каждый микросервис нужен адрес, что недопустимо.

Приведу пример:
user.animekun.ru - пользователи
payment.animekun.ru - платежи
files.animekun.ru - файлы

И если микросервисов куча то это будет:
user001.animekun.ru
user002.animekun.ru
user003.animekun.ru
что недопустимо

Нормальная реализация микросервисов должна выглядеть так:
22.215.78.33:2158 - пользователи
22.215.78.34:2158 - пользователи
22.215.78.35:2158 - пользователи
т.е. мне надо запускать микросервисы на самом железе БЕЗ ДОМЕНА и они должны работать

Исходя из этой таблицы:
https://www.techempower.com/benchmarks/#section=da…

Самый быстрый Backend будет на C++ drogon-core, но ходят слухи что писать на С++ это ад по времени. Т.е. будет ОЧЕНЬ ДОЛГО.
Выдерживает 616 607 запросов в минуту

Дальше мы видим Rust xitca-web с которым я вообще не знаком, он вроде как хайпает. Не знаю буду ли его проверять.
Выдерживает 587 955 запросов в минуту

После этого идет JavaScript just-js, с которым не понятно, он вообще умеет работать с MySQL или PostgresSQL. Т.е. базы данных ему доступны или это какой-то сервер для простых вещей, вроде отдачи файлов.
Выдерживает 538 414 запросов в минуту

И вот, наконец-то тот самый GoLang, который я сейчас изучаю по учебникам и курсам. В нём есть GO atreugo-prefork
Выдерживает 381 480 запросов в минуту

Немного отстаёт наш родной PHP workerman-php8-jit, классический, чистый код, на котором я пишу около 15+ лет.
Выдерживает 347 686 запросов в минуту

И вот там, внизу, где-то в самой заднице находится то, что требуют от меня работодатели. А именно PHP Laravel, который ничего не выдерживает от слова СОВСЕМ
Выдерживает 16 657 запросов в минуту

Так что продолжаю находиться в замешательстве, что именно мне делать. На чем писать, как писать. Как мне сесть на два стула. Переделывать проекты + устроиться на работу, когда требования у них диаметрально противоположные.

:th_84:

И да, оплатил сервера на $255
Подсчитаем траты: $155 + $133 + $12.71 + $17.09 + $102 + $255 = $674,8

Я просел по деньгам сильно, а ведь даже ещё ничего не выпущено и не видно света в конце тунеля. По факту я иду "ва-банк". Т.е. делаю вид что вместо 100 руб. в кармане у меня 100 000 руб. в кармане. И всё идет по плану, прямо как в треке у Егора Летова
https://youtube.com/watch?v=rbEGDQzbprg

29 августа 2022 года 20:16, рейт: 3

Итак, я не особо успел покодить два предыдущих дня, но сегодня очень хорошо накидывал работы.

Завтра собеседование в компанию donatepay, шанс что возьмут наверное 15-20%, но если прокнет то я буду рад. Появится как минимум финансирование с работы.

Сегодня три новых репозитория:
Энсибл со скриптами установки виртуальных машин или VPS
https://github.com/MokhovEvgeniiGennadevich/ansibl…

Гайды для самого себя по настройке всего на свете, от Windows до Linux, перенесу всё туда, а то уже путаюсь в файлах на своём жестком диске.
https://github.com/MokhovEvgeniiGennadevich/Guides

Органайзер, в котором я буду записывать свои дела каждый день, удобно. По крайней мере лучше чем текстовый файл, который я постоянно забываю или теряю.
https://github.com/MokhovEvgeniiGennadevich/todo-o…

Ну и конечно слежу за точечками зелёными на календарике:
https://github.com/MokhovEvgeniiGennadevich

Не играл ни дня. Так что не в запое.

26 августа 2022 года 00:26, рейт: 3

14 дней потратил на игры. Сегодня вернулся из одного виртуального мира в другой.

Продуктивно. Регистрация и логин в прототипе уже работают. Всё очень быстро и удобно. По факту даже моментально.

E-Mail для регистрации не требуется, только логин. А он ограничен лишь фантазией. Кто захочет восстановления пароля по почте дополнительно привяжет e-mail к своему аккаунту.

Пароли сначала хэшируются, потом шифруются. Что соответствует последним веяниям безопасности на ближайшие лет 10.

Завтра в таком же режиме буду работать. Посмотрим, что из этого выйдет.

17 августа 2022 года 22:37, рейт: 3

Неделю ничего не делал. Сегодня неплохо накидал.

FrontEnd, который делает запрос на GateWay
https://github.com/MokhovEvgeniiGennadevich/fonten…

GateWay, который делает запрос на Microservice:
https://github.com/MokhovEvgeniiGennadevich/backen…

Microservice USER:
https://github.com/MokhovEvgeniiGennadevich/backen…

В целом я доволен, прогресс пошёл. Готовлюсь к тому, чтобы для теста мигрировать пользователей аКуна и проверить, смогу ли я заходить под своим логином/паролем и регистрировать новые аккаунты. Если да, то уже пол дела сделано.

10 августа 2022 года 03:52, рейт: 3

За эти дни я решил зайти со стороны фана. Накидал всяких странных штук, с минимальным оформлением или издёвкой. Выложил всё это на ГитХаб.

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

Чаты и полная история донатов, просто приколюха:
https://chat.toxiccat.ru/
https://github.com/MokhovEvgeniiGennadevich/fronte…

История любви Кринжа и Чинза, тру стори:
https://love.toxiccat.ru/
https://github.com/MokhovEvgeniiGennadevich/2022-p…

Суть в том, что я просто накидываю трэша, тренюсь быстро пользоваться GIT, быстро деплоить (выкладывать) проекты.

И да, с Qubes OS я обратно ушёл на Windows 10. Работать там невозможно, это тихий ужас, кромешный ад, мрак. Решил что всю работу над кунами я буду делать в Windows 10, по этому заново перенастраивал сетапы. А работу по передаче проектов, доменов и серверов я оставлю в Qubes OS, который обеспечит анонимность и безопасность сего мероприятия.

6 августа 2022 года 08:45, рейт: 2

И давайте я наброшу немного. В последнее время всё больше IT компаний вводят драконовские методы из-за своей убыточности в плане инфраструктуры. И у меня вопрос, может я и не прав … Но … Не пора ли перестать юзать кубер и все проекты пихать в докер контейнеры? А пытаться как то выжать максимум КПД из железа своего?

Я ни к чему не призываю, но вот вам свежее:
1. Аниме проект animekiss закрылся имея посещаемость 22 млн. в месяц. Затраты на железо не покрывались доходами.
2. Гитлаб собирается удалять старые репозитории, в которых давно не было активности, судя по их финансам они в убытках на 125 млн. долларов.

А теперь представьте что с ростом Кунов я бы их просто закрыл, так как доходы и расходы не сходятся. Звучит уебански, не правда ли?

И что-то я подумал, что в этом плюс легаси кода. Куны скрипели и свистели, отваливались в 500 ошибку, но все еще живы. Чего не скажешь о современных решениях на современных движках и технологиях.

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

И проще везде ставить монстра вроде Laravel, чём опять же платить прогеру, который будет разбираться в сложном чужом коде на самописном движке.

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

Просто мысли вслух

5 августа 2022 года 00:32, рейт: 2

Написал сегодня PHP Библиотеку, которая занимается шифрованием aes-256-cbc + sha256/sha512 подписью.

Выложил на ГитХаб:
https://github.com/MokhovEvgeniiGennadevich/PHP-Cr…

Создал первый в жизни пакет в Composer:
https://packagist.org/packages/mokhovevgeniigennad…

Что мне это дало? Ни-ху-я. Ну да, круто, я теперь могу этот пакет в любой проект подключать и использовать. Но будет ли это работать?

И давайте представим сколько таких библиотек мне надо написать, чтобы Куны переписать? Сотню?

Мне надо на стримы, собирать вокруг себя прогеров, чтобы они помогли понять, зачем всё это нужно. И какое это имеет отношение к разработке проектов.

3 августа 2022 года 04:41, рейт: 2

Забыл, я ещё занёс денег за сервера, $102

Подсчитаем траты: $155 + $133 + $12.71 + $17.09 + $102 = $419.8

Интересно, успею ли я сделать, пока последние штаны не потеряю?

2 августа 2022 года 05:16, рейт: 2

Итак, сегодня я упёрся в стенку с VueJS 3. Проект перестал билдиться после того, как я несколько раз попытался интегрировать EN/RU языки. В итоге мне пришлось перебилдить проект (пересоздать). И всё заработало, правда провозился с разными языками часов 5.

В остальном всё прекрасно идёт. Я пишу параллельно DEMO API чтобы выводить данные в шаблоне и сам шаблон АнимеКуна.

Думаю завтра я смогу выложить результаты, которые можно покликать. Это пара страниц, но это пара страниц на довольно сложной базе. Сложной, но унифицированной фреймворком, который под капотом оптимизирует сайт, насколько это возможно. И пока что выбором VueJS я доволен.

Опять же разработка идёт под термином mobile first. Т.е. я включаю эмуляцию мобильника и верстаю. Это позволяет вычленить самые важные элементы функционала, разместить всё, как можно удобнее. Потом я расширяю экран на обычную ПК версию и расширяю функционал в вёрстке. Благо сейчас это всё делается автоматом с помощью @media-запросов.

И ДА. Я сейчас параллельно ищу красивый шаблон, чтобы сразу два варианта дизайна делать. И пока что есть одна идея. Но я не нашёл именно красивый и бесплатный шаблон. Полно красивых, но они все платные.

1 августа 2022 года 02:25, рейт: 2

Итак. Вчера я психанул и наставил сразу:
FrontEnd AnimeKun Vue3
FrontEnd AnimeKun Laravel 9
FrontEnd AnimeKun Laravel 9 + Vue 3

Все это залил на Гитхаб. Моя идея состояла в том, что я ставлю что угодно и пробую делать. В итоге метод сработал. Я довольно плотно засел за FrontEnd AnimeKun Vue3. Шаблон верстается, думаю ещё день-два и база будет готова.

Потом я то же самое делаю с BackEnd, ставлю что угодно, пробую сделать регистрацию и авторизацию. В шаблон я добавил даже пару новых вещей, не знаю, по мне так прикольно выглядит. Но общая стилистика Кунов останется прежней, чтобы никого не шокировать переездом.

В целом я планирую как минимум 3 шаблона каждого из Кунов. Но для этого надо сначала доделать взаимодействие с сервером, т.е. получение данных, регистрацию. И тогда погнали на небеса разработки. Мне останется только клепать и множить варианты.

Например вариант "облегчённый", для тех у кого старые ПК или кто любит минимализм, без свистоперделок. И конечно всевозможные современные варианты.

Настроение приподнятое. Хоть и злой. Программирование, ненавижу блять программирование.

30 июля 2022 года 04:15, рейт: 2

Перенервничал. Сегодня еле встал с кровати. После этого весь день сидел и смотрел кто как прогает. Искал примеры кода по стандартам PSR + SOLID + KISS + DRY. Не нашёл ни одного примера, только сотни примеров того кода, который я сам раньше и писал.

Сижу в ступоре. Пытаюсь создать в Git новый репозиторий с шаблоном АнимеКуна во Vue, чтобы быстро дать какой-то микросервис под него на NodeJS, хоть как-то поиграться, попробовать, потестить. Но не выходит.

Чувствую себя жалким, ничтожным, бесполезным и тупым.

28 июля 2022 года 04:40, рейт: 2

Попытался написать обычный класс, который записывает и выводит результаты по использованию памяти в PHP приложениях. В итоге ничего не написал. Всё это пытаюсь сделать применяя стандарт PSR-18 + SOLID + DRY + KISS.

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

Это вообще меняет весь процесс разработки, переворачивает с ног на голову.

Раньше всё как было:
1. Открываю блокнот
2. Накидываю модуль (спагетти код)
3. Тестирую
4. Заливаю

Теперь (как я это вижу):
1. Продумываю структуру, как инженер
2. Создаю классы, интерфейсы, кучу абстракций
3. Компоную это всё в готовый модуль Composer и использую в автозагрузке (autoload).
4. Пишу тесты (UnitTests)
5. Прогоняю тесты
6. Пишу CI/CD (?)
7. Прогоняю CI/CD в GitHub
8. Добавляю во все проекты, где это необходимо

А теперь давайте разберёмся в плюсах и минусах этих подходов…

Раньше:
+ Быстрая разработка, быстрый результат, быстрый рабочий проект
+ Можно придумывать на лету различные вариации, придумывать крутой, альтернативный функционал, внедрять какие-то фичи, которые ещё не реализованы нигде
+ Любой современный код можно легко "запихнуть" внутрь своего убогого кода, спагетти кода и всё будет работать.
- Спустя пару месяцев проект становится невозможно поддерживать, потому что количество кода становится огромным. Спагетти код читается сложно. Если ты сделал модуль и открыл его через год то нужно будет потратить кучу времени, чтобы прочитать его и понять, что в нём происходит.
- Рефакторинг (переработка) проекта становится невозможной. Проще написать с нуля. Что собственно и случилось с Кунами. Невозможно их дорабатывать и переделывать, их надо писать с нуля.
- Изменить что-то в базовом функционале невозможно, весь код рухнет, если я изменю базовую функцию, которую использует весь движок. Мне придётся искать каждый файл движка и изменять работу этой функции, что приводит к куче ошибок (не так поменял, опечатался)

Теперь:
+ Поддержка кода за счёт кучи абстракций максимальна. Если что-то поменялось в PHP то мы просто меняем буквально пару строк и всё. Остальные части системы даже не заметят никаких изменений.
+ Можно менять базовый функционал. Можно расширять базовый функционал за счёт абстракций до бесконечности.
+ Рефакторинг становится намного проще, так как ты пытаешься максимально соблюдать стандарты. И если ты ошибся и где-то стандарт упустил, то переделать всё под стандарт не составляет проблемы.
- Медленная разработка, приходится очень много думать и знать. Надо постоянно проверять код на соответствие PSR-18 + SOLID + DRY + KISS
- Развивается психоз на фоне того, что за последние 20 лет развития интернета огромное количество сайтов написано по старому формату и скорей всего тебе надо уметь читать "старый код", спагетти код, уродский код и переписывать его или интерпретировать на новый лад, согласно стандартам.
- Быстро запихнуть уродский, старый код, которым наполнен интернет больше нельзя. Нельзя нагуглить "красивый вывод расхода памяти в PHP" потому что 80%-90% статей будет написано за последние 20 лет и ты не можешь вставлять это убожество в свой проект. Т.е. тебе придется искать "правильную" реализацию или писать свой код, что сильно замедлит разработку и внедрение новых фич.

26 июля 2022 года 06:05, рейт: 2

Я уже думал не осилю сегодня. Ничего не получалось, ничего не работало. А пробовал я устанавливать и настраивать MySQL через Ansible.

В итоге во время своих путешествий по коду нашёл имплементацию разных модулей (ролей) Ansible на GitHub:
https://github.com/geerlingguy/ansible-role-nginx
https://github.com/geerlingguy/ansible-role-php
https://github.com/geerlingguy/ansible-role-securi…
… и т.д.

Эти готовые варианты подключений выложил человек, который написал книгу на эту тему. Она так и называется "Ansible for DevOps".

Закачал модули php, nginx, mysql, начал переписывать свой Ansible скрипт, разбираться в сотнях переменных. В итоге всё-равно всё плохо ставилось, с багами и прочим.

В конце-концов все-таки смог собрать рабочий билд. Завтра арендую сервер, натравлю Ansible на него, если сработает, то пол дела уже сделано. Дальше я смогу вернуться к разработке шаблона для аКуна и микросервиса USER.

Вообще конечно я много раз за день расстраивался, потому, что я тупой. Мой код - отстой аутиста. Когда я смотрю мастеров GitHub'a я вижу что есть разработчики, крайне высокого уровня, которые сразу ставят CI/CD, настраивают всё так, чтобы их код из гитхаба можно было легко использовать любому.

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

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

Да уж … Ну и задачка конечно.

Подсчитаем траты: $155 + $133 + $12.71 + $17.09 = $317.8

23 июля 2022 года 05:47, рейт: 2

Итак, сегодня продолжил с Ansible, шаблон уже умеет:
1. Ставить базовые пакеты в систему, вроде curl, wget, gpupg, sudo
2. Удалять CD-ROM из базового пакета apt, который блокирует потом установку софта
3. Добавляет все репозитории Debian 11, которые нужны
4. Обновляет систему
5. Добавляет двух пользователей
6. Меняет пароли пользователей, в том числе root пароль на убер сложные
7. Ставит всем пользователям свои SSH ключи авторизации
8. Удаляет в системе возможность гибернации или сна
9. Меняет стандартный SSH порт с 22 на нестандартный
10. Выключает возможность логина под root пользователем
11. Выключает возможность авторизации по паролю, только SSH ключи
12. Устанавливает NGINX, ставит его в автозагрузку, перезапускает

Дальше мне необходимо чтобы Ansible удалял стандартный default домен, который открывается и добавлял уже конкретные домены рабочих проектов.
Но этого мало, потом мы притягиваем PHP-FPM, со свом конфигом, который я буду регулировать и надеюсь найду конфиг связки PHP + NGINX не сильно хуже чем у Laravel Forge.
После всей этой мутатени мы добираемся до самого главного - MySQL в качестве базы данных на сервере. Вот с ней я вообще подохну разбираться. Там и root надо вроде как вырубать по стандарту. И сложные пароли генерировать. И базы данных создавать автоматом под каждый проект.

И если я сделаю эти "нехитрые" вещи то сразу же покупаю тестовый сервер и запускаю на нём скрипты Ansible. И потом сразу же продолжаю писать Логин/Регистрацию, с авторазвёртыванием на сервере.

22 июля 2022 года 03:46, рейт: 2

Откопал Ansible и Puppet, сейчас буду ставить и настраивать Ansible. Судя по описанию это всё, что мне нужно для управления хоть сотней серверов.