Сенсей ⌁ Технический директор
1.75K subscribers
168 photos
4 videos
81 links
Аттракцион по переходу из диджитал-агентства в стартапы.

Помогаю диджитал-агентствам и фаундерам:
— найти свой рынок
— организовать разработку
— запускать SaaS-продукты и сайты
— нанимать разработчиков

Консультации, менторство и реклама: @vseznaika
Download Telegram
Time & Materials: снижение рисков

Клиент обычно хочет договориться на фиксированную цену, заранее её обговорить и подписать контракт. Это самая понятная схема, которая встречается повсеместно — как потребители мы покупаем товары и услуги за "фикс" каждый день.

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

В проектах с неопределённостью нужно подписывать контракты по схеме Time&Materials:
- Клиент оплачивает фактические трудозатраты (почасовка).
- Клиент оплачивает потраченные материалы и инструменты.
- Клиент оплачивает привлечённых субподрядчиков.

Какие риски мы снимаем, переходя на T&M:
- Убыточные проекты — себестоимость всегда оплачена клиентом.
- Бесконечные правки за счёт агентства уходят в прошлое — клиент платит за свой перфекционизм.
- Низкое качество работы при промахе в оценке — в фиксированной цене агентство будет стоять перед выбором: снизить качество или сделать в минус.
- Конфликты с клиентом — стороны недовольны друг другом. Клиент не доплачивает, агентство не дорабатывает. Возникает это ближе к финалу работ, когда становится очевидно, что проект выходит за рамки бюджета.
- Провал в мотивации — кому интересно делать убыточные проекты низкого качества и конфликтовать?

В T&M агентство продаёт то, что закупило у сотрудников — часы работы. Агентству становится выгодно и комфортно делать крутые и сложные проекты.

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если полезно
🏆 Жми на кубок, если продаёшь почасовку
148🏆5🔥1
Часовое видео — за 5 минут

Часто мне нужно посмотреть длинное видео, и это вовсе не развлекательный контент.

Как я с этим справляюсь:
- Делаю запрос в поисковике "youtube video to text online"
- Открываю сразу 2-3 инструмента
- Выбираю тот, который работает без регистрации. Сейчас чаще всего использую https://youtubetotranscript.com/
- Могут подойти разные инструменты, в зависимости от того, говорит в видео один или несколько человек, нужны ли метки с временем
- Вставляю в сервис ссылку на ролик
- Практически моментально получаю весь текст из видео
- Дальше вставляю его в AI-чат
- Сообщаю ему, что это транскрипт видеоролика. Прошу сделать саммари/выжимку или задаю вопросы к тексту
- Читаю выжимку

Экономия времени: вместо 1 часа на просмотр — 5 минут на транскрибацию и чтение выжимки.

Если видео не на Youtube:
- скачать видео с помощью расширения для браузера
- загрузить на свой Youtube-аккаунт в режиме unlisted (доступ по ссылке)
- дать транскрибатору эту ссылку для расшифровки
- после транскрибации видео можно удалить

PS: Несколько читателей посоветовали использовать для этих целей https://notebooklm.google. Спасибо!

❤️ Нажми на сердечко, если нравится подход
⚡️ Нажми на молнию, если полезно
🧑‍💻 Нажми на ботана, если уже так делаешь
1812👨‍💻4
Закрывайте тестовые сайты от индексации

Часто веб-студия разворачивает тестовый сайт для демонстрации клиенту: сделать приёмку сайта до публикации, посмотреть на новый дизайн или на экспериментальные функции.

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

Самый простой и надёжный способ — HTTP Basic Auth. При вводе адреса тестового сайта вылезет диалог с логином и паролем. Задаётся всё в конфигурации веб-сервера, работает и для Nginx и для Apache. Девопсы и сисадмины знают, как быстро настроить эту фичу.

Код проекта не затронут — разработчикам ничего не нужно делать. Поисковые роботы не могут посетить сайт — спокоен SEOшник. И случайные люди не смогут на сайт попасть.

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если полезно
🧑‍💻 Жми на ботана, если так и делаешь
139👨‍💻6
Рассказал про лидген в агентство

В клубе Галера начался месяц лекций и обмена опытом о лидгене для агентств.
Вчера состоялся круглый стол, на котором я делился опытом.

Был рад получить тёплый отзыв в чате от Гульшан из BeautyMedMarketing
Думаю, начали месяц Лидгена прямо оочень хорошо.
Михаил собрал всю базу, которая работает на сегодня, которую буквально отработал на себе. Обязательно посмотрите эфир и презу👌
Мне как раз нужна была помощь в инфе про холодные звонки. Михаил подробно рассказал, как выстроен этот процесс.


В эфире я кратко рассказал о своём опыте получения клиентов для диджитал агентства. По каждому из этих источников можно сделать развёрнутую лекцию или хотя бы пост.
1. Сарафан / рекомендации
2. SEO
3. Холодные звонки
4. Отраслевые конференции и выставки
5. Контекстная и таргетированная реклама
6. Чаты
7. Партнёрские программы

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


Для участников Галеры — запись эфира на платформе, презентация в общем чате и особые условия на моё менторство у вашего менеджера.

Для не участников клуба напоминаю, что даю персональные консультации. Пишите по этому поводу в личку @vseznaika
15👍7🔥1
Фильм: Человек, который изменил всё / Moneyball

Как менеджер спортивной команды поверил в силу статистики. И как это изменило индустрию бейсбола. Кино про решения, основанные на данных.

Я не любитель спортивных фильмов, но этот фильм скорее про бизнес, чем про спорт. Про смелость руководителя, переговоры, непростые решения, сопротивление коллектива переменам и про личные приоритеты. Мне понравилось, пересматривал несколько раз.

В главных ролях Брэд Питт и Джона Хилл (из "Волка с Уолл-стрит"), 6 номинаций на "Оскар" и всё это основано на реальных событиях.

Этот фильм я часто рекомендую руководителям, потому что ценно и мало кто его смотрел. Кино спокойное, не травмирует психику — можно смотреть на ночь.

❤️ Жми на сердечко, если фильм нравится
⚡️ Жми на молнию, если будешь смотреть
🧑‍💻 Жми на ботана, если любишь кино про ботанов
1210👨‍💻10
Тестирование для вайб-кодинга

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

- Без тестов мы не можем быть уверены, что ИИ не разрушил часть работающего функционала. Галлюцинации и потеря контекста вносят неожиданные проблемы, которые тесты могут выявить.
- В среднем, код сложнее, чем тесты — у него больше вариантов в результате исполнения. Предполагаю, поэтому ИИ будет проще писать хорошие тесты, чем хороший код.
- Автоматизированное тестирование станет более доступным по цене и не таким трудоёмким в создании: большая часть рутинного кода будет писаться тоже с помощью ИИ. Очень мало причин не обзавестись регрессионными тестами.
- В ближайшее время появится множество инструментов для покрытия тестами, ревью кода, анализа и исправления ошибок с помощью ИИ.
- Аудиты на безопасность и нагрузочное тестирование сможет запускать агент.

Есть обратная сторона. ИИ может писать такой код, чтобы он проходил тест, а не решал поставленную задачу. Он может даже подменять ожидаемое значение, лишь бы пройти тест. Хорошо на этот случай иметь множество разных проверок кода — юнит-тесты, статический анализ, линтеры, попытка компиляции, функциональное тестирование, интеграционные и e2e-тесты, автоматизированное и ручное ревью кода.

Как мне кажется, объём и качество тестирования будет расти. Возможно, будет нужен агент или человек для тестирования тестов!

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если словил инсайт
🧑‍💻 Жми на ботана, если пишешь тесты
107👨‍💻4
This media is not supported in your browser
VIEW IN TELEGRAM
Работник ПВЗ.
Будущее неравномерно распределено.
5👀2🔥1
Сравнительный анализ

Почему-то иногда мы забываем, что не всё должно получаться с первого раза.
Ходить мы учились очень долго — разбивали коленки и лбы. А приносящий клиентов сайт и рекламная кампания должны были получиться с первого раза!
Но опыт накапливается постепенно...

Ещё влияет размер выборки. В нашей небольшой деревне быстрее всех бегают Петя и Вася. А в онлайн выборке алгоритмы нам рекомендуют и показывают только олимпийцев во всех видах спорта.
И тут мы попадаем сразу в две крайности: вначале сравнивали себя с местной парой атлетов, а потом — с лучшими людьми в интернете.

Нужно пройти свой путь от 1 до 1000го повторения. Набирать опыт, несмотря на всех олимпийцев, обесценивающих твои достижения самим фактом своего существования. Ведь практически, чтобы убежать от медведя, нужно просто бегать быстрее соседа. А чтобы получать удовольствие от бега — не нужна ни Олимпиада, ни зрители.

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

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если словил инсайт
🏆 Жми на кубок, если кайфуешь в процессе
🏆14136🤔1
Обнови свой HTTP

Что такое:
Протокол передачи данных HTTP применяется для всех сайтов в интернете.
Все самые популярные веб-серверы по умолчанию используют устаревшую версию протокола HTTP/1.1. Apache2, NGINX, Node.js, uWSGI, Gunicorn, Tomcat, Jetty, IIS — все виновны.

Браузер пытается одновременно скачать с сайта код, десятки картинок и скриптов. На HTTP/1.1 браузер открывает несколько параллельных соединений, в каждом из которых файлы загружаются по очереди. С HTTP/2 открывается одно соединение, по которому одновременно загружаются все файлы. HTTP/3 ещё быстрее и лучше работает в мобильных сетях.

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

Год выхода стандарта:
HTTP/1.1 — 1997
HTTP/2 — 2015
HTTP/3 — 2022

Как обновить:
В большинстве серверов HTTP/2 уже встроен, но его нужно явно включить в конфигурации. В NGINX достаточно добавить слово "http2" в конфигурацию и всё заработает, настолько всё просто.

HTTP/3 достаточно свежий, поэтому для многих серверов нужно будет ставить дополнительные модули. Сисадмину будет интересно с этим разобраться.

Как проверить:
Из консоли любой операционки
curl -I https://example.com

На первой же строке ответа будет указана версия протокола: HTTP/1.1, HTTP/2, или HTTP/3

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если пошел проверять свой сайт
🧑‍💻 Жми на ботана, если всё это знаешь
98👨‍💻4
Лидген на отраслевых выставках

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

1. Выбираем выставку на сайте местного экспоцентра. Недвижимость, туризм, HR, пчеловодство, загородное строительство или фэшн — в расписании выставки сменяют друг друга круглый год.
2. Готовим хотя бы один тематический кейс под эту выставку.
3. Кейс загружаем в ноутбук или планшет.
4. Печатаем визитки, а то даже и буклет.
5. Надеваем лучшую рубашку, часы, бреем бороду, замазываем прыщ. В общем, всё что нужно для уверенности и делового вида.
6. На каждом стенде спрашиваем директора по маркетингу, главного за продвижение, руководителя отдела продаж или "с кем у вас про рекламу поговорить?"
7. Показываем отраслевой кейс, отвечаем на вопросы, оставляем визитку, берём контакты. Договариваемся на следующий звонок или встречу.
8. Профит!

На таких выставках начальство скучает на стенде вместе с линейными менеджерами. Они очень ждут партнёрств и у них есть время — время на вас и ваш оффер. В начале выставки многие могут разговаривать. К концу некоторые уже подпили и готовы про что угодно поболтать.

Ещё один лайфхак: идти с напарником, чтобы общаться по ролям или звать коллегу, технического специалиста или руководителя для усиления переговоров.

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если намотал на ус
🏆 Жми на кубок, если уже находишь клиентов на выставках
159👍3🏆1
Выбираю платформу для базы знаний

За последнее время часто возникает потребность создания документации или базы знаний в разных проектах. Сколько бы мне ни нравился Obsidian для личных заметок, для коллективного использования в вебе он не предназначен. Поэтому я начал поиск продукта "база знаний".

Требования:
- Поддержка русского языка
- Статьи можно писать коллективно
- Можно опубликовать на моём домене
- Хочу поддержку markdown
- Современный внешний вид из коробки, который легко брендировать
- Приятный интерфейс и UX

Рассматривал все варианты.
Первыми не подошли зарубежные платные продукты: Gitbook, Notion, Confluence, Zendesk. Зачем сразу создавать себе проблемы с оплатой и блокировками?
Потом стал смотреть российские платные: Teamly — альтернатива для Notion, CarrotQuest — альтернатива для ZenDesk/Intercom, Kaiten — альтернатива для Jira. В Kaiten мы даже сделали книгу сотрудника для агентства и остались довольны, но это всё же не для публичного доступа.

Потом опомнился, что не хочу платить за подписки. Я готов разворачивать и админить приложения в нашей инфраструктуре. Начал смотреть на Open Source, чтобы бесплатно и с открытым кодом. Оказывается, не так много хороших решений.
Outline и Documize оказались продуктами с платными версиями, не стал разбираться в тонкостях лицензий, убрал их из сравнения.
BookStack — не понравился редактор статей, весь продукт выглядит устаревшим. Ставили его пару лет назад и пробовали использовать, но не прижился.
GitLab — почему бы не писать документацию для разработчиков внутри репозитория? Решил опробовать, но для публичной базы знаний нужно что-то другое.

В итоговой выборке остались эти продукты:
Wiki.js — победитель, пока остановился на этом продукте и буду его пробовать. Множество плагинов, поддержка разных баз данных, корпоративный логин, markdown, всё выглядит очень современно.
Docusaurus — второе место, поддерживает переводы и версии, отлично выглядит и тоже полностью открытый исходный код без скрытых тарифов.

Занятно, что оба написаны на Node.js + TypeScript. Хотя я на стек смотрел в последнюю очередь.

А на какой платформе база знаний у вас и насколько вы ей довольны?

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если полезно
🧑‍💻 Жми на ботана, если разворачиваешь приложения
128👨‍💻3
Channel name was changed to «Сенсей ⌁ Технический директор»
MCP простыми словами

Одна из громких тем этого года — MCP для ИИ. Решил разобраться как всё устроено и вам рассказать.

Если кратко: Теперь ИИ можно дать любой внешний инструмент и он будет знать, как им пользоваться. Помните момент, где Нео осознал, что знает кунг фу?
Инструментом может быть браузер, файлы на компьютере, почтовый ящик, музыкальный редактор, робот-пылесос, автономный автомобиль или фабрика по производству дверей. MCP — протокол для подключения любой фигни к ИИ.

MCP — это открытый стандарт, за которым стоит Anthropic (разработчик Claude). Раньше каждый сервис изобретал свою интеграцию с ИИ. Anthropic упаковали лучшие практики интеграции с ИИ в стандарт. Сейчас доступна вся экосистема клиентов, серверов, инструментов и SDK — разработчикам очень легко присоединиться и добавить свой инструмент.

MCP состоит из Клиента (ваш чат-бот или IDE) и MCP-Сервера, которые вместе используют элементы системы.
- Инструменты — для ИИ. Описанный набор действий, которые может вызывать ИИ.
- Промпты — для взаимодействия с Людьми. Это готовые инструкции, как именно использовать инструменты, обрабатывать данные и проводить диалоги.
- Ресурсы — ссылки на файлы или данные, которые нужны для работы инструментов.

MCP очень быстро развивается и обновляется. Тысячи MCP-серверов уже доступны — достаточно подключить их к своему клиенту и начать пользоваться.

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если узнал новое
🧑‍💻 Жми на ботана, если уже используешь MCP
1212🔥3👨‍💻1👀1
Как плохая поддержка убивает хороший сервис

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

Провожу расследование:
- Сервер добросовестно отправляет почту через API, ошибок в логах нет.
- Проверяю блеклисты — с репутацией всё в порядке.
- На почтовом сервисе по отправке почты Unisender увеличивается счетчик отправленных писем.
- Письма не доходят на все домены и тестовые почты: gmail, yandex, mail и т.д.
- На сервисе postmaster у мейла количество писем не меняется. То есть, мейл наши письма не получает. Очень подозрительно.

Делаю вывод, что проблема на стороне Unisender Go. Мы к ним отправляем, они письма фиксируют, а дальше них письма не уходят.

Пишу в чат поддержки. Молчание в течение часа.
Звоню на телефоны поддержки на сайте — там автоответчик говорит "Сейчас поддержка по телефону не работает — пишите в чат на сайте".
Пишу емейл в поддержку. Тоже нет ответа.

У нас оплачен тариф, куплен дополнительный IP-адрес для отправки.
Доставка почты — сервис инфраструктурный. На нём держится вся автоматизация оказания услуги. И этих ребят нет на связи. За прошлый год у Юнисендера выручка 865 миллионов рублей. А на дежурную поддержку и сисадмина в воскресенье денег не нашлось.

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

Конечно, этих безответственных и экономных поставщиков инфраструктуры мы поменяем на другой сервис.

А вас когда-нибудь подставлял известный сервис подобным образом?

PS: Порекомендуйте другие транзакционные почтовые сервисы.

⚡️ Жми молнию, если хочется метнуть в них молнию
🤯 Жми на взрыв мозга, если удивлён
🙈 Жми на мартышку, если испытал испанский стыд
🤯139🙈8
Продублируй важные системы

Все критические системы должны быть продублированы. За последние годы я видел, как останавливаются и ломаются критические системы у очень больших сервисов — отзыв лицензии у Точки и Киви, сбои в эквайринге от Сбера и Юкассы, упавший на две недели СДЭК, почта от Юнисендера...

Поэтому, напоминаю себе и вам:
- У бизнеса должно быть открыто два расчетных счёта в разных банках. Резервный счёт может ничего не стоить, но спасти много нервных клеток в случае конфликта с основным банком. А ещё у банков иногда отзывают лицензию.
- У бизнеса должно быть два юридических лица, например, ИП и ООО одновременно. Если одно из юр лиц имеет спор с налоговой, то второе может подхватить хозяйственную деятельность.
- В онлайн-сервисе должно быть два эквайринга. Особенно, если это банковский эквайринг, а не агрегатор — агрегатор может переключить шлюз на другой банк.
- Онлайн-касс тоже должно быть хотя бы две.
- У интернет-магазина должно быть две службы доставки.
- Как я вчера выяснил, должно быть две службы для email и sms рассылок, если они для вас критичные. Если не работает отправка сообщений, то покупатели не могут попасть в личный кабинет.
- Правильно иметь копию инфраструктуры в другом дата-центре. Хотя бы бэкапы хранить отдельно и иметь возможность быстро поднять все сервисы.
- Домен и DNS лучше держать отдельно от серверов. Потому что, если выключился хостинг, нужно иметь возможность перенаправить трафик в другой дата-центр.
- Можно заранее купить второй домен и использовать его в рекламе или для корпоративных нужд.
- Крупные интернет-магазины держат два агентства по трафику, запуская рекламные кампании по очереди. Или даже просто выплачивают второму подрядчику резервную абонентскую плату и держат деньги на балансе рекламного кабинета.
- Нужно держать бэкапы всего, хранить минимум в двух экземплярах в разных локациях. И проверять, что бэкапы рабочие.

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

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если полезно
🏆 Жми на кубок, если уже что-то продублировал
118🏆6🙈1
🙌🙌🙌🙌 15+ документов для тех, кто в диджитал

В преддверии новой активности мы собрали в одну папку 18 Telegram-каналов известных профессионалов и попросили их авторов подготовить для вас документы, которые помогут:

🔴Создать рабочий лид-магнит;
🔴Подготовить сайт к требованиям РКН;
🔴Подготовиться к любому выступлению;
🔴Удержать проект в сроках и рамках бюджета;
🔴Организовать эффективное участие в тендерах;
🔴и еще много много всего!

✔️ Я делюсь таблицей "Open Source вместо платной подписки: рабочие альтернативы для агентств и стартапов", используя которую вы сможете найти бесплатные аналоги известных программ и сэкономить на корпоративных подписках десятки тысяч рублей.

❗️ Сохранив единожды папку «Документы для тех, кто в диджитал», вы сможете спокойно пройтись по всем каналам и скачать множество авторских документов, которые точно пригодятся в работе.
Please open Telegram to view this post
VIEW IN TELEGRAM
15🔥72
Расходы на хостинг Open Source приложений на опыте веб-студии

В посте с таблицей Open Source решений не указано, сколько стоит их содержать. Рассказываю о своём опыте.

Минимальный тариф на VDS будет стоить примерно 300 рублей в месяц. Этого хватит, чтобы развернуть и использовать большинство приложений из таблицы.
Хостинг для тяжеловесного мониторинга ошибок Sentry стоит мне около 4000 рублей в месяц — это пока рекорд. Gitlab CE на всю команду выходит 1700 рублей.

Если размещаем много приложений, не обязательно брать под каждое новый VDS. У меня есть сервер с установленным Portainer (удобная альтернатива Kubernetes), который позволяет просто запускать множество приложений. Я плачу за него 1500 рублей, а на нём работают 14 контейнеров с n8n, zammad и чат-ботами. Подозреваю, что там ещё что-то поместится.
Современные виртуальные серверы позволяют увеличивать мощность и место на сервере постепенно, по мере потребности.

Open source инфраструктура для современной веб-студии до 50 человек обходится примерно в 10 тысяч рублей в месяц.
Если у вас свой офис, то можно все эти приложения развернуть на своём сервере и не платить за аренду VDS.

Чтобы обслуживать серверы и устанавливать приложения, будут нужны услуги системного администратора. Задачи с разворачиванием приложений — базовые и не требуют повышенной квалификации. Можно взять исполнителя на сдельную работу, штатный сисадмин для этого скорее всего не нужен.

⚡️ Жми на молнию, если захотел свой маленький дата-центр
🧑‍💻 Жми на ботана, если в теме
🙈 Жми на мартышку, если ничего не понятно
🙈9👨‍💻873
Удобный ssh

Надоело каждый раз искать логин и пароль от сервера?

Дано:
Вам нужно через терминал заходить на удалённые серверы. Хостинг дал логин, пароль и IP-адрес сервера. Каждый раз нужно искать и копировать их в консоль. Это неудобно, поэтому ниже инструкция, как перейти на ключи.

Порядок решения:
Создаём пару ключей у себя на компьютере. Открываем терминал, вводим команду ssh-keygen и жмём Enter несколько раз.
После этого в скрытой папке ~/.ssh/ появляется два файла
id_rsa — приватный ключ, его никуда никогда никому не показываем.
id_rsa.pub — публичный ключ, его копируем в нужные сервисы.

Выводим публичный ключ на экран, чтобы можно было его скопировать.
cat ~/.ssh/id_rsa.pub
Этот ключ нужно вставить в профиль на Github или Gitlab, скопировать на удалённый сервер или указать при создании VDS на хостинге.

Копируем ключ на удалённый сервер командой ssh-copy-id. Для выполнения нужно знать логин, IP-адрес или домен сервера. Например
ssh-copy-id [email protected]
ssh-copy-id [email protected]
При первом соединении нужно будет ввести yes в подтверждение обмена ключами.

Для быстрого входа на сервер можно записать его реквизиты в текстовый файл ~/.ssh/config
Host myservername
Hostname 10.24.24.24


Если для доступа нужен другой логин, нестандартный порт или админы выдали приватный ключ для подключения, то указываем это в том же конфиге
Host myservername
Hostname 10.24.24.24
User root
Port 22
IdentityFile ~/.ssh/id_rsa


Проверяем:
Подключаемся к удалённому серверу одной командой ssh myservername. Если в конфиге один пользователь, а нужно зайти под другим — используем ssh sensei@myservername.

Итог:
Вы мгновенно попадаете на сервер, используя выбранное вами название. Экономия времени на поиске адреса и пароля.

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если полезно
🧑‍💻 Жми на ботана, если давно ходишь по ключам
97👨‍💻5🔥1
Сколько у вас крадёт хостинг?

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

Бизнес облачного и виртуального хостинга строится на том, что они продают нам кусочки большого сервера. Хостинг продаёт нам виртуальные машины по тарифу, в котором указана мощность процессора и количество ядер.

Покупателям кажется, что это похоже на места в самолёте: на 100 кресел можно продать 100 билетов. Но хостинг продаёт гораздо больше. В отличие от самолёта, у хостинга кресла могут быть заняты частично — нагрузка изменяется со временем. Поэтому хостинг частенько продаёт 150 "билетов", на 100 "кресел".

Виртуальный сервер любезно отображает украденное процессорное время — показатель CPU Steal Time. Он транслирует, какой процент времени наши приложения ждали своей очереди, пока все процессоры были заняты другими клиентами.

Если у вас крадут до 5%, в индустрии это считается технически допустимым. В виртуализации заложена конкуренция за ресурсы, можно понять. Но если показатель выше 5% — вы получаете меньше ресурсов, чем вам обещали.

Как это проверить:
Через терминал заходим на сервер.
Вводим команду top или mpstat -P ALL 1.
Ответ будет например таким:
%Cpu(s):  1.0 us,  0.5 sy,  0.0 ni, 97.0 id, 0.5 st

Смотрим за параметром Steal или st, в примере выше он последний. Он меняется со временем, поэтому хорошо бы его мониторить или сделать несколько замеров подряд в разное время.

Что делать, если steal выше 5%:
- Писать в службу поддержки хостинга "Выявлен высокий показатель steal CPU, примите меры" и прикладыватьпоказатели с терминала. Скорее всего, ваш проект перенесут на другую ноду с меньшей нагрузкой.
- Брать тариф Dedicated CPU с гарантированным выделением ресурса. Обычно это в 3 раза дороже — Можно прикинуть, насколько сильно перегружены самолёты серверы на обычных тарифах.
- Переезжать на выделенный сервер — менее гибко, но будет гарантия доступности всех вычислительных ресурсов. Если у вас нагруженные приложения, то это ещё обойдётся дешевле облака.
- Если ситуация повторяется регулярно — хостинг жадный, нужно переезжать.

Моя история закончилась письмом в техподдержку. Показатель Steal time доходил до 40%. Ночью с пятницы на субботу без лишних препирательств нас перенесли на менее загруженную ноду и показатель снизился до 0.5%.

Надо бы сделать автоматизацию, чтобы такое письмо писал робот 🤖

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если узнал новое
🧑‍💻 Жми на ботана, если следишь за этим показателем
109👨‍💻3
Как я перешёл на Линукс

В конце 2000-х я прочитал новость, что Марк Шаттлворт, ментор мафии PayPal и основатель Thawte, основал фонд для финансирования разработки Линукса. Этим Линуксом был дистрибутив Ubuntu, который я и установил. На тот момент почти все российские компьютеры работали на пиратских копиях Windows и все установленные программы тоже были пиратские. Эра SaaS ещё не наступила, купить винду или WinRAR казалось дурацкой идеей. Я захотел провести эксперимент и поработать только на Open Source программах. Так как я занимался веб-разработкой, то у меня получилось и вскоре Ubuntu стал моей основной операционной системой. Дошло до того, что когда у меня был MacBook Pro, на нём тоже был установлен Ubuntu вместо MacOS.

Первые попытки поставить Линукс начались на десять лет раньше. Они проваливались, потому что все программы были иные, а попытки решить проблемы с железом или драйверами заводили в тупик.

Сейчас ситуация иная. На Линуксе есть все привычные браузеры и мессенджеры. Драйверы он успешно находит и устанавливает сам. Веб стал платформой для приложений и часть софта стала онлайн-сервисами. Большинство программ, которые есть одновременно на Windows и Mac, скорее всего есть и под Линукс.

Чего в линуксе до сих пор не хватает:
- MS Office — для совместной работы я использую Google Docs, для открытия файлов — бесплатный LibreOffice. Совместимость не полная, но мне для работы хватает.
- Мало программ для работы с музыкой, видео и графикой. Нет приложений Adobe. Для графики использую Gimp и Inkscape. Для обработки аудио есть мультиплатформенный Audacity, для стриминга есть OBS Studio, для просмотра видео — плеер VLC. Думаю, что тем, кто работает с медиа, удобнее работать на MacOS. Хорошо, что теперь интерфейсы для сайтов стали делать в браузерной Figma.
- Мало игр. Есть Steam, который выручает всю ситуацию, но в нём не все игры совместимы с Линуксом. Я в современные игры на компьютере не играю, поэтому меня этот момент не беспокоит.
- Нет антивирусов — для домашних пользователей они не нужны. Вирусов просто нет, не сталкиваюсь с заражениями рабочей станции и не слышал про такие случаи много лет. Теоретически это возможно, но хакерам проще взломать массу компьютеров на винде.
- Поддержка ЭЦП и разного рода электронных ключей. Раньше тут был полный игнор пользователей, поэтому у меня была виртуальная машина с виндой или отдельный компьютер под ключи. Сегодня ситуация меняется из-за развития российского дистрибутива Астра Линукс для замены Windows в госсекторе, так что скоро все ключи будут работать.

За последние годы видел, как обычные пользователи работают на Линукс без проблем — освоились и работают в нём каждый день, не замечая разницы.

Скачать Ubuntu бесплатно без регистрации и sms.

Как думаете, каких программ вам будет не хватать, если вы завтра поменяете операционную систему на новую?

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если узнал новое
🧑‍💻 Жми на ботана, если линуксоид
118👨‍💻3
Среда для приложения

Приложение, будь это сайт, какой-то сервис или мобильное приложение, проходит через несколько стадий жизни.
На каждой стадии приложение работает в своем окружении (в оригинале Environment, что можно переводить ещё как Среда).
На разных стадиях отличается почти всё в окружениях — приложение запускают компьютеры разного типа и мощности, подключаются различные инструменты, загружаются разные конфигурации, подгружаются данные, с ним работают роботы и люди различных специализаций.

Дев (dev, development, local, IDE) — тут сидит разработчик, приложение раскрыто и подключено к приборам, лампочки, мониторы, кишки наружу. Хирургическое отделение, идёт операция. По итогу работы приложение будет передано на следующую стадию разработки.

Тест (test, QA) — тут его всячески проверяют. Заводятся выдуманные пользователи, которые выполняют заготовленные сценарии с синтетическими данными. В роли тестировщиков выступают и люди, и роботы. Их задача — найти ошибки и вернуть приложение разработчикам на исправление или отправить на следующую стадию.

Демо (Demo, Review) — приём приложения у менеджеров. Смотрят продакт, проджект и аккаунт-менеджеры, представители клиента, стейкхолдеры.
Часто демонстрацию проводят на стейдже или тесте, не создавая отдельное окружение.

Стейдж (staging, stage) — тут разворачивают приложение на копии настоящих данных (иногда анонимизированных), проводят финальные тесты на совместимость, интеграцию с другими системами и делают проверки перед выходом в свет. Окружение максимально приближенное к проду.

Продакшн (прод, prod) — тут с приложением случается релиз — его опубликовали и теперь с ним работают реальные пользователи. Это финальная стадия — эксплуатация. Акцент на надёжность, скорость работы и сохранность данных.

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

❤️ Жми на сердечко, если интересно
⚡️ Жми на молнию, если полезно
🧑‍💻 Жми на ботана, если программист
98👨‍💻8