Как стать автором
Обновить
4
0

Программист

Отправить сообщение

Бесплатная альтернатива: GitHub + Cloudflare Pages.

Это дает:

Моя пост с инструкциями: hackernoon.com. Пример полученного сайта-визитки: https://kazakov.xyz/
Отличный выбор для личных сайтов без затрат!

Как это работает шаг за шагом:

  1. Создание сайта с Hugo: Вы устанавливаете Hugo на свой компьютер, создаете структуру сайта, добавляете контент (например, в формате Markdown) и генерируете статические HTML-файлы командой hugo.

  2. Размещение кода на GitHub: Создаете публичный или приватный репозиторий на GitHub и загружаете туда исходный код сайта. Например, можно форкнуть готовый шаблон, такой как github.com/kksudo/kazakov.xyz.

  3. Подключение Cloudflare Pages: В панели Cloudflare создаете проект Pages, связываете его с вашим репозиторием на GitHub и указываете команду сборки (например, hugo --minify). Cloudflare автоматически собирает и публикует сайт при каждом коммите.

  4. Настройка домена: Привязываете собственный домен (если есть) или используете бесплатный поддомен вида *.pages.dev. Cloudflare предоставляет SSL-сертификат для HTTPS.


P.S.: Если сайт из РФ недоступен и вам его не открыть, то тут PDF копия.
P.P.S: Если вы не используете свой личный домен и проксирование Cloudflare, то возможно ограничения по доступу из различных регионов. В других случаях ограничений не будет.
P.P.P.S: Надеюсь трудностей с переводом с Eng не будет, но если что, то могу перевести на наш родной )

Kiwix делает периодические оффлайн дампы Stack Overflow (а также Википедии и т.п.). Там и комментарии, и поиск работает.

https://kiwix.org/en/
https://library.kiwix.org/#lang=eng&category=stack_exchange&q=stack+overflow

НЛО прилетело и опубликовало эту надпись здесь
В данном случае совет только один, прежде чем писать почитайте, в частности по nginx читать:
— всё подряд от VBart
— действительно хорошие методы борьбы с флудом от kyprizel
— просто бест-практик от lexore — https://habrahabr.ru/post/231277/
и т.п.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь

Все очень просто.
1) Не выделяй память, если можно не выделять
2) Знай какие операции блокирующие, а какие нет. Очевидно читать файл или слать запросы в сеть в гуёвом потоке дело неправильное.
3) Не городи абстракций в одноразовых решениях или на среднем уровне архитектуры приложения. Конкретный код, под конкретное бизнес решение, никогда не будет переиспользован.
4) Соблюдай стайл-гайд
5) Если пишешь костыль, оставь огромный комментарий с цепочкой размышлений, который привёл к появлению костыля.
6) Если условие сложное, разбей на несколько булевых переменных с нормальным названием и скомбинируй. Если невозможно (например сложная регулярка), то оставь понятный текстовый пример, когда условие срабатывает и когда не срабатывает.
7) Не используй редких английских слов в названиях
8) Погугли хоть раз в жизни " best practices".
9) Не пиши сложно и оптимально, если код вызывается раз в час/сутки/жизнь.
10) Даже если ты невероятно крут и умен, помни, что читать и поддерживать твой код будут люди менее компетентные. Это не значит, что надо писать хуже, но значит, что в каждой точке, над которой пришлось подумать и сделать неочевидно — нужно оставить комментарий.

Хм. Я как раз довольно активно думал на тему «как добавить в ОС нативные макросы-расширители», и под венду, например, ничего не нарыл. Остаётся только AHK.
Почта для домена (Яндекс Коннект, например) позволяет указать ящик, на который будет сыпаться почта для незарегистрированных адресов в этом домене.
Получаются алиасы, которые даже вручную создавать не надо.
Я так при регистрации на мусорных сайтах обычно указываю домен_мусорного_сайта@мой_домен и даже запоминать, на какую я трешепочту я когда-то на этом конкретном сайте регистрировался, не приходится.
Особенно «весело» при использовании MFC и STL в одном проекте. У той же CString::Empty() — очистка строки.
До РКН похоже все же дошло, адреса начали разбанивать. vk.com/wall171797458_1489

Согласен, прямо сейчас ни одна реализация не вычисляет, но стандарт c++17 допускает Temporary materialization prvalue в sizeof.
Да, *ptr это конечно не prvalue, но тем не менее — в какой то момент код очень похожий на sizeof *ptr может сломаться от nullptr в ptr.

Можно вместо Forth использовать PUSH — специально разработанный язык программирования для этой области.
faculty.hampshire.edu/lspector/push3-description.html

Да, область называется en.wikipedia.org/wiki/Genetic_programming
Там много подводных камней на самом деле.

Информация

В рейтинге
6 648-й
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность