Перейти к основному содержимому

Разработка в Garry's Mod без локального сервера, FileZilla и Putty

· 4 мин. чтения
к сведению

Я уже писал пост на эту тему в 2020 году, но с того момента все изменилось и радикально упростилось. И все равно я советую прочесть пост 20го года.

Разработка курильщика

Нуб программист

Если вы все еще:

  • 🤢 Пишете код "на локалке"..
  • 🤢 ..через Notepad++ или SublimeText.
  • 🤢 Используете FTP клиент (FileZilla, CyberDuck, не важно)
  • 🤢 Подключаетесь к серверу через Putty / игровую консоль в браузере
  • 🤢 Делаете бекапы вручную или скриптиками
  • 🤢 Используете хостинг с FTP и консолькой вместо своего сервера с SSH
  • 🤢 Авторизируетесь в SSH по паролю или таскаетесь с приватным ключом

Тогда мы идем к вам!

SSH без пароля и возни с приватным ключом

· 2 мин. чтения

tailscale banner

🤢 Традиционно SSH это ввод где-либо пароля, либо возня с SSH ключом, который нужно переносить между устройствами. Первое ненадежно, второе неудобно.

👍 Но можно сделать, чтобы в FTP и SSH клиентах нужно было указывать лишь hostname и имя пользователя. Даже на телефоне. И это без каких-либо настроек. Больше вы не зависите от SSH/FTP клиента, "потому что в нем мои пароли сохранены".

Дружим Garry's Mod сервер и Git правильно

· 6 мин. чтения

Я годами не мог придумать, как сделать, чтобы на Git хранились только самые необходимые файлы и папки без мусорных (cache, backgrounds, console.log и т.д.). Казалось бы, простая задача, но решил я ее лишь недавно.

Чел сжигает лишнее

Это все нужно было для того, чтобы удобно работать с сервером через плагин VSCode Remote SSH, словно сервер находится на локалке и при этом любые изменения с легкостью пушить на GitHub без лишнего мусора

А зачем в гмоде вообще Git?
  • Возможность редактировать код с любого устройства, где есть браузер, даже с телефона друга
  • GitHub хранит историю изменений файлов сервера
  • Видно кто и когда и что изменял. Почти невозможно незаметно подложить бекдор.
  • Может служить своеобразным бекап-хранилищем вашего проекта
  • Поиск по файлам сервера прямо в браузере.
  • Возможность поделиться ссылкой на код

Ошибка 451, 403 при установке Tailscale

· 2 мин. чтения

Возникает при попытке установки Tailscale на хостах в некоторых странах.

root@s:~/tailscale# curl -fsSL https://tailscale.com/install.sh | sh
The installer cannot reach https://pkgs.tailscale.com/
Please make sure that your machine has internet access.
Test output:
curl: (22) The requested URL returned error: 451

Скриншот с терминала. Ошибка apt update

Вкратце:

  1. Добываем прокси нейтральной страны. Ниже подскажу где быстро, дешево, удобно
  2. Выполняем команды установки Tailscale с указанием прокси

Как меня развели на $2,000

· 2 мин. чтения

мои переживания

Заскамили, как мамонта. Никогда не мог подумать, что попадусь на такое.

Кратко о том, как несколько дней назад лил кровавые слезы и что случилось.

Часть оборотных денег я хранил на криптовалютном кошельке в USDT (криптоаналог доллара). Так мои сбережения были в большей степени защищены от инфляции национальной валюты и всем известных банковских "бзиков", когда счет могут заблокировать "за подозрение в подозрении".

Про мокрые углы, точку росы и плесень в доме

· 8 мин. чтения

плесень при входе в дом

Хочу поделиться своим горьким опытом и бесплатным решением проблемы с плесенью в доме.

Эту зиму я решил провести на даче. Стены тонкие, дом высокий, а не широкий (у комнат нет соседних помещений), зима короткая, зато холодная. Все это привело к появлению влаги на стенах и в углах, запаху сырости и отслоению краски со шпаклевкой.

Я много раз слышал термин "точка росы" и с умным лицом притворялся, что я понимаю, что это. Я сам так считал.

Поиск утечек памяти в Lua

· 3 мин. чтения

Перенос информации с /docs

Пришлось столкнуться. Мои микрозаметки на этот счет.

TL;DR

Все, что описано ниже может быть полезным, но в моем случае полезнее всего оказалось сбилдить LuaJit от Tarantool и использовать встроенный в него memory profiler (memprof), который покажет где и сколько памяти не высвободилось в коде.

Self-Hosted Long Polling микросервис. Зачем и как

· 6 мин. чтения

banner

примечание

Этот пост – актуализация и перепись двух старых постов на эту тему.

poll.def.pm – это простейший open-source Long Polling сервер, который выступает в качестве своеобразного WebHook сервера и хранит в себе полученные updates.

🌈 Вы можете указать единый вебхук url на всех API сервисах, с которыми работаете, затем получать эти вебхуки со стольки своих сервисов, сколько создадите.

  • В любое время. Даже если ваш сервис был offline, данные не теряются
  • Мгновенно. Как только приходит новый апдейт, вы сразу его получаете. Без задержки
  • Без спама GET запросами. Соединение с long-polling не разрывается, пока не придет апдейт.
  • Получаете везде одновременно. Например телеграмовский getUpdates запрещает одновременно получать апдейты на нескольких серверах. Так ваш бот не сможет работать по частям на разных серверах.

express.lua – создание веб приложений на Lua

· 6 мин. чтения

lua-express-white-banner

🌕 express.lua это самый детализированный порт оригинального express.js, написанный на Lua. Пока кто-то не докажет обратного.

По сути, lua-express это минималистичный web фреймворк с почти полной совместимостью API с express.js, позволяющий создавать веб приложения на чистом Lua.

Сравнение
const express = require("express")
const app = express()

app.get("/", function(req, res) {
res.send("Hello World")
})

app.listen(3000)