misha98857 – Telegram
misha98857
161 subscribers
92 photos
17 videos
2 files
83 links
Пишу о штуках, которые пилю в свободное время и жизни
Download Telegram
Channel created
Hello guys!

If you are still using the app with React documentation. Can you check the app working fine after the last update or are you seeing white screen without any info?
👍122
Hello guys!

I plan to share interesting and useful content on my Telegram channel! To make the content as engaging as possible for you, I would like to know which language you prefer to see in my posts.

I would be grateful for your response! Please select your preferred language from the options provided or mention your language in the comments. Thank you for participating!
Привет! Хоть опрос выше и показал, что английский более предпочтительный язык, но аналитика telegram говорит об обратном, поэтому следующий посты планируются на русском языке.
---
Hello! Although the survey above showed that English is the more preferred language, telegram analytics says the opposite, so the next posts are planned in Russian.
👍1
Так как близко новый год, то пройдёмся по краткосрочным планам.
Насколько я знаю, что многие вступили в этот канал перейдя в него из одного из моих приложений.
И немного планов по ним:
1. Оффлайн справочник React. Раньше приложение брало информацию с официальной документации по React (https://reactjs.org), но теперь данная документация считается legacy и актуальная находится на сайте https://react.dev. И с этим есть одна блокирующая проблема, что он полностью переведён только на английский язык, а на другие менее 20%. Возможно в следующем году добавлю английскую версию в приложение и когда документация будет переведена на русский, то добавлю и его.
2. Оффлайн справочник Vue. Vue 2 - всё (EOL). Буду обновлять до Vue 3 в ближайшем времени.
3. Оффлайн справочник фронтендера. Недавно добавил туда документацию по Angular, но так как это делалось довольно быстро, то скорее всего есть проблемы. Постараюсь обновить информацию в приложении и добавить в него все фичи из других приложений.

А так же, есть пару проектов информацию о которых опубликую в канале:
1. Планирую дать интервью об одном продукте, который недавно разрабатывали.
2. Расскажу ещё об одном продукте, который сейчас разрабатываем и скорее всего скоро релизнем.
3. Секретный проект. Пока под покровом тайны, но скоро будет больше информации :)

В общем краткосрочные планы на следующий месяц примерно такие :)
🔥3
В свои лучшие годы я активно старался баг хантить с надеждой заработать миллионы долларов, но получилось не так много. Возможно вам тоже эта тема интересна и поделюсь несколькими ссылками, как можно вктиться в бб более быстро и безболезненно (нет, скорее всего будет больно):
1. Тг папка с каналами по баг баунти - каналы от топов ру сегмента бб, где можно найти единомышленников
2. Платформа https://codeby.games - очень классные бесплатные ctf с отличным комьюнити. Просто выбираете тему и начинаете решать по ней лабы и вжух вы уже сильно прокаченнее в определённой теме совершенно бесплатно.
3. Курс WAPT от Codeby, если интересует хакинг веба, прям оченб мощный курс - я прошёл и мне понравилось и как раз во время учёбы нашёл самые дорогие баги, но в своё время эта была для меня целая проверка смогу дойти до конца или нет.

В общем в текущей ситуации баг баунти в РФ сильно развивается после ухода hackerone и можно хантить на площадках BI.ZONE, Standoff365 и т.д. и реально зарабатывать миллионы :)
This media is not supported in your browser
VIEW IN TELEGRAM
Возможно вы встречали имитацию тумана или что-то похожее, что выглядит красиво, но не очень понятно, как это сделано.

Скорее всего для реализации такой фичи используют шейдеры. По ним есть замечательная интерактивная книга The Book of Shaders пройдя которую можно сильно прокачаться в этой теме и уже с полным пониманием реализовывать красивые вещи, например как этот туман.
Недавно делал проект на godot по плейлисту, но там есть куча антипаттернов и как делать не стоит. В этот чудесный новогодний вечер всё-таки дошли руки начать переписывать поведение персонажа на FSM. В общем, теперь мне godot нравится ещё больше, возможно скоро будет демка планируемой игры и скорее всего на этих выходных проведу пару стримов с разработкой игры.
С новым годом! Пусть мечты сбываются и всегда будет хватать здоровья их осуществлять :)
Интересный момент, теперь для новых каналов нужно запрашивать доступ к трансляциям и подтвердить своё намерение с помощью номера телефона, только после этого будет 24-часовой cooldown на трансляцию. Видимо таким способом стараются решить проблемы всяких трансляций "SpaceX", где предлагают вложить биткойны.

Поэтому, если кто-то в будущем захочет быстро создать трансляцию, то проверьте, что вам эта фича доступна.
Ради эксперимента провёл небольшую трансляцию, чтобы потестить звук и в целом каково это кодить что-то новое на стриме. В общем по мне норм, думаю ещё шумоподавление от nvidia включить или gate звука чуток прибавить, чтобы не было слышно размышлений.

Думаю завтра ещё подключу трансляцию и добью разделение логики на FSM, а после уже буду доп. механики начинать реализовывать.
Привет! Запустил стрим, будем допиливать поведение персонажа и если есть какие-нибудь вопросы, то можно задавать в чат и обсудим :)

https://youtube.com/live/P9b8oQKamuo?feature=share
Сегодня почти весь день ушёл на то, чтобы дописать и отладить основные фичи в приложении и улучшить пару вещей, поэтому особо ничего не успел сделать по игре. На самом деле, там осталось не так много и думаю, что скоро будет анонс и релиз.
This media is not supported in your browser
VIEW IN TELEGRAM
Хоть и не успел ничего такого реализовать, но идея для следующей механики уже есть.

Как думаете, что это будет?
Сегодня довелось много писать на NestJS и делюсь парой удобных штук:
1. Prisma Studio - довольно удобно можно запустить одной командой в папке проекта и не нужно настраивать подключение через сторонние клиенты.
2. Bull - очереди поверх редиса с довольно удобным синтаксисом и простой установкой. Для него есть дашборд, но так как там для подключения нужно было немного заморочиться, то пока хватило AnotherRedisDesktopManager.
3. Ну и bcrypt для хеширования паролей.

P.S. Статья со скриншота
В предыдущем посте упоминал Prisma Studio, классная вещь, но есть проблема, что её можно запустить только указав путь до схемы базы данных и поднять локально, а вот подключиться к серверу нет. А так же, так как пока для тестирования используем sqlite, то соответствено нужно иметь доступ к файлу дб.

Можно поднять локально на сервере спуллив проект или скачав схему, но возникает проблема, что сервис безальтернативно поднимается на 5555 порту без какой-либо авторизации.

Сталкиваясь на работе с nginx-ом часто встречал конструкцию с proxy_pass, которая позволяет проксировать данные с одного url на другой. И зная это придумал забавное решение.

1. Ставим ufw - это firewall, который блокирует куда можно отправять трафик и куда нельзя в обе стороны (на приём и передачу). Классная инструкция здесь. На самом деле, я бы всегда рекомендовал блокировать всё, что не используется, так как нас однажды хакнули, когда использовали слабый пароль от ssh и очень много трафика шло через наш сервер, ufw такое бы заблокировал. Правда в любом случае после такой атаки только переустановка сервера или восстановления из бекапа, когда точно он не был взломан.
2. В нашем случае блокируем доступ к порту 5555
sudo ufw deny 5555


3. Устанавливаем nginx, если не был установлен. Способ установки зависит от системы.
4. После меняем конфиг для nginx, чтобы он проксировал другой порт с Basic Authentication (связка логин/пароль).
4.1 Как сделал я на тестовом сервере - просто в /etc/nginx/sites-enabled/default заменил конфиг. А по хорошему, нужно в sites-available добавить новый домен и потом слинковать его в sites-enabled
bash 
sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/


4.2 Конфиг получился
server {  
listen 3100 default_server;
listen [::]:3100 default_server;

location / {
proxy_pass http://127.0.0.1:5555/;
auth_basic "Restricted area";
auth_basic_user_file /etc/nginx/.htpasswd;
}
}


4.3 А чтобы создать связку логин и пароль, то используем htpasswd
sudo htpasswd -c .htpasswd user_name

В итоге после таких манипуляций и нас будет закрыт порт 5555, он будет доступен только из внутренней сети и мы сможем заходить в prisma studio на 3100 порту с аутентификацией.
👍1
В общем, как показала практика sqlite не очень удобен для разработки, если тебе нужно иметь базу на сервере и разрабатывать локально. Поэтому поднял PostgreSQL. Сейчас пока напрямую открыл доступ в интернет защитив паролем учётки, но по уму нужно какой-нибудь VPN до сервера прокинуть, чтобы никто не пытался пароли перебирать к бд. Пришлось потратить некоторое время, чтобы открыть доступ к базе из вне и когда всё сделал по разным статьям, увидел, что всё есть в этой. Главное, не забудьте ставить сложный пароль, так как боты довольно быстро могут перебрать базовые комбинации.
👍2