Настройка proxy на ubuntu для telegram

Есть несколько облачных провайдеров, где можно поднять виртуальную машину и настроить прокси. 3 самые крупны из них это Amazon (AWS), Microsoft и DigitalOcean. Постепенно я перевожу все свои мощности на DigitalOcean (DO), почему я так делаю можнт быть напишу позже. В сравнении с DO AWS выходит дороже. В DO минимальная виртуалка стоит 5$. Вот реферальная ссылка https://m.do.co/c/2be6737899ca за регистрацию по этой ссылке 100$ кредитами на 60 дней. Ставим dante: wget http://ppa.

Почему я выбрал Python вместо .net core?

Почему я выбрал Python вместо .net core?

Начало Начать стоит с того, как я пришел в .net. Это произошло сразу после погружения в ООП в виде Visual Basic. После знакомства с VB стало понятно, что такое программирование на ООП и что это очень мощная штука. Стал вопрос куда развиваться дальше. Уже существовал .NET Framework и VB.NET, было очевидно, что это не та платформа, за которой будущее. Это было примерно в 2006. Предстояло первый раз выбрать платформу, в которую погружаться.

Настройка Monosnap в Ubuntu

Для начала создаем пользователя, через которого будем загружать скриншоты. adduser oxozle-src При необходимости создаем дополнительную группу addgroup oxozle-src Создаем директорию для загрузок sudo mkdir -p /home/oxozle-src/uploads Устанавливаем права для рута на родительскую директорию. Добавляем права. sudo chown root:root /home/oxozle-src sudo chmod 755 /home/oxozle-src sudo chown oxozle-src:oxozle-src /var/sftp/uploads Редактируем и перезапускаем демон ssh Match User oxozle-src PasswordAuthentication yes ChrootDirectory /home/oxozle-src ForceCommand internal-sftp AllowTcpForwarding no PermitTunnel no AllowAgentForwarding no X11Forwarding no Рестартуем

Переезд блога

Я почти пол года не писал в блог. Давно пора это исправить. После небольшого копания в коде я решил изменить свой блог и начать работу с новой платформой. Мне нравится внешний вид блога, но крайне не устраивает его техническая часть. Первая версия была реализована в виде велосипеда на .net framework. Затем, чуть больше года назад была обновлена до .net core. И все бы хорошо, если бы. В последнее время мне не нравится направление, куда двигается microsoft и платформа .

Как мы делали приложение с crash-free 99.5%

Как мы делали приложение с crash-free 99.5%

Обеспечение качества любого приложения является одной из важных причин его успеха. Каждому уважающему себя разработчику хочется, чтобы его приложение работало стабильно, без багов и ни в коем случае не падало. Мы будем рассматривать приложение Sweetmeet. Это продукт для онлайн знакомств, разработанный в компании Фотострана. Основные возможности в приложении – смахивание карточек, профиль пользователя, чаты. Проект разрабатывался и поддерживался в течение 2,5 лет. Немного о том, из чего состоит приложение: - на текущий момент проект содержит 72 000 строк кода.

Установка и запуск .net core на ubuntu 16.04

Установка и запуск .net core на ubuntu 16.04

Для начала ставим все обновления sudo apt-get update # Fetches the list of available updates sudo apt-get upgrade # Strictly upgrades the current packages sudo apt-get dist-upgrade # Installs updates (new ones) sudo reboot Копируем локальный ssh ключ на сервере ssh-copy-id -i ~/.ssh/id_rsa.pub {username}@{remotePublicIPAddress} Проверяем, что он успешно добавился cat .ssh/authorized_keys Редактируем настройки ssh, запрещаем авторизацию по паролю sudo nano /etc/ssh/sshd_config Port XX — Порт, желательно сменить. По умолчанию 22.

Настройка SSL Let's Encrypt в Nginx на Ubuntu

Настройка SSL Let's Encrypt в Nginx на Ubuntu

Файлы импорта Создами несколько файлов для уменьшия копипасты. Первый файл нужен для проверки letencrypt домена. Создаем файл /etc/nginx/snippets/letsencrypt.conf содержимым location ^~ /.well-known/acme-challenge/ { default_type "text/plain"; root /var/www/letsencrypt; } И файл общих настроек для ssl /etc/nginx/snippets/ssl.conf ssl_session_timeout 1d; ssl_session_cache shared:SSL:50m; ssl_session_tickets off; ssl_protocols TLSv1.2; ssl_ciphers EECDH+AESGCM:EECDH+AES; ssl_ecdh_curve secp384r1; ssl_prefer_server_ciphers on; ssl_stapling on; ssl_stapling_verify on; add_header Strict-Transport-Security "max-age=15768000; includeSubdomains; preload"; add_header X-Frame-Options DENY; add_header X-Content-Type-Options nosniff; Создаем директорию, необходимую для работы letsencrypt

Настройка Web Dav в nginx

Настройка Web Dav в nginx

Настройка Web Dav в nginx Очень удобно иметь скриншоты на своем домене. Я использую Monosnap в качестве скриншотера, в дополнение к настройке web dav в windows теперь все хранится в Ubuntu. Очевидно, что ftp уже изжил себя в качестве протокола для сохранени и отдачи скриншотов. Оказалось, что настроить webdav в nginx можно из коробки. Для этого привязываем домен (в моем случае это поддомен основного домена). Создаем каталог для будущего сервера

Почему следует выбрать Kotlin для следующего проекта на Android

Почему следует выбрать Kotlin для следующего проекта на Android

Почему может возникнуть такой вопрос? На сегодня можно было разрабатывать приложения для андроида на следующих технологиях: Стандартная Java. Это родной язык для всех приложений на андроиде Xamain. На Xamarin можно разрабатывать приложения на C# для iOS, Android и Windows Phone. PhoneGap и другие HTML аналоги. Сюда я пока отнесу Progressive Web App, представленный гуглом годом ранее. Сюда, потому что нет полноценной поддержки на iOS, да и по большому счету технология еще не Production Ready Можно прочитать заметку о том как выбрать платформу разработки для мобильного приложения.

Почему вам следует завести блог?

Почему вам следует завести блог?

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