Pull to refresh
35
Karma
0
Rating
Konstantin Coocheenin @coocheenin

Пользователь

Github — без командной строки

Reading time 2 min
Views 67K
Website development *Version control systems *GitHub *

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

Многие опытные пользователи github-а знают, что отнюдь не для всего обязательно нужно использовать командную строку. Все это так.

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

Читать дальше →
Total votes 67: ↑45 and ↓22 +23
Comments 33

aptitude vs apt. 5 причин, почему я использую aptitude

Reading time 2 min
Views 71K
Configuring Linux *
Пять параметров, по которым aptitude превосходит (по четвертому параметру не уступает) apt:

1. Логичность синтаксиса. И единство управления.
2. Гибкость поиска.
3. Проставление меток пакетов.
4. Разрешение зависимостей.
5. Интерфейс.

наглядно и с картинками
Total votes 137: ↑118 and ↓19 +99
Comments 92

Коротко о Shadowsocks, или OpenVPN не нужен (в каждом доме)

Reading time 6 min
Views 193K
System administration *
Sandbox
В наши дни, когда всякие нехорошие элементы так и норовят влезть в ваш трафик и как-то там напакостить, стало модным шифрование трафика. Начинание это благое и полезное, вот только делают его зачастую избыточно. Если шифрование трафика до доверенного сервера, типа своего VPS, — ваша единственная цель, то OpenVPN для такой цели слишком наворочен. Его долго настраивать, легко обнаружить, а главное — есть подводные камни, не зная которых можно получить такую ситуацию, что VPN стоит, а трафик идёт в обход. Всё это потому, что OpenVPN задумывался больше как средство доступа к маленькой сети через Интернет, а не для доступа ко всему Интернету.
Читать дальше →
Total votes 56: ↑55 and ↓1 +54
Comments 77

Game Boy Pocket: краткий обзор + потрошки

Reading time 2 min
Views 57K
Old hardware Games and game consoles
Sandbox
Сложно найти человека, который не знает о портативных консолях Nintendo. Еще сложнее найти того, чье детство/юношество пришлось на 90-е, и который не мечтал заиметь одну из них. В статье пойдет речь о втором поколении консолей Nintendo Gameboy: Gameboy Pocket.


Читать дальше →
Total votes 33: ↑29 and ↓4 +25
Comments 24

Game Boy Original: Обзор, разборка, особенности

Reading time 4 min
Views 91K
Old hardware Games and game consoles
В то время как мы с вами довольствовались игрой, где волк ловит яица, на аккуратно склонированной приставке компании Nintendo Game&Watch, японцы уже шагали семимильными шагами, и в далёком 1989 году на свет появилась портативная игровая консоль нового поколения Game Boy. В отличие от России и стран СНГ, где она была непопулярна из-за своей дороговизны (и, видимо, проблемы её клонирования пиратами), а вот в США, Японии, Англии и других странах она была сверхпопулярна. Игровых приставок Game Boy и Game Boy Color было продано порядка 118 миллионов штук! А хорошо знакомая нам игра Тетрис была продана для данной консоли тиражом 30 миллионов картриджей! Для сравнения, копий игры Battlefield 3 было продано окало 15 миллионов штук. Что же послужило такой колоссальной популярностью Game Boy? Всё очень просто. Nintendo не стала делать самую технологически продвинутую платформу, наоборот, ставка была сделана на доступность и простоту. И простота в ней была не только для пользователей, но и для разработчиков. В основе устройства лежал упрощённый и доработанный процессор Zilog Z80, имелись 2 модуля памяти по 64Кбита и… и всё. На плате Game Boy можно насчитать ровно 4 микросхемы и практически больше никаких элементов с поверхностным монтажом. Если вам интересно, что же из себя представляет внутреннее устройство Game Boy Original, вам прямая дорога под кат.


Читать дальше →
Total votes 86: ↑84 and ↓2 +82
Comments 50

Встречаем сервис от Cloudflare на адресах 1.1.1.1 и 1.0.0.1, или «полку публичных DNS прибыло!»

Reading time 7 min
Views 188K
Domain names administrating *System administration *DNS *

1.1.1.1


Компания Cloudflare представила публичные ДНС на адресах:


  • 1.1.1.1
  • 1.0.0.1
  • 2606:4700:4700::1111
  • 2606:4700:4700::1001

Утверждается, что используется политика "Privacy first", так что пользователи могут быть спокойны за содержание своих запросов.


Сервис интересен тем, что кроме обычного DNS предоставляет возможность использовать технологий DNS-over-TLS и DNS-over-HTTPS, что здорово помешает провайдерам по пути запросов подслушивать ваши запросы — и собирать статистику, следить, управлять рекламой. Cloudflare утверждает, что дата анонса (1 апреля 2018, или 04/01 в американской нотации) была выбрана не случайно: в какой еще день года представить "четыре единицы"?

подробнее
Total votes 39: ↑39 and ↓0 +39
Comments 130

Популярные бюджетные носимые радиостанции

Reading time 4 min
Views 38K
Gearbest.com corporate blog Wearable electronics
В подборке речь пойдет про разрешенные носимые (маломощные) радиостанции разрешенного диапазона (LPD433/PMR446).

Это недорогие китайские рации типа Baofeng и Xiaomi, а также аксессуары к ним.


Читать дальше →
Total votes 41: ↑32 and ↓9 +23
Comments 82

Нейровоспаление

Reading time 18 min
Views 25K
Popular science Health
Исследователи склонны всё больше и больше внимания обращать на воспалительные процессы в мозгу при дегенеративных заболеваниях, как в роли первопричины, так и в роли вторичного фактора, вызванного повреждением нервной ткани. Нейровоспаление может оказаться центральным процессов в старении организма.

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

С патологиями, включающими в себя болезнь Альцгеймера, которую вы вероятно знаете по состоянию писателя Терри Пратчетта перед его смертью, болезнь Паркинсона, от которой в последние годы своей жизни страдал художник Сальвадор Дали, боковой амиотрофический склероз, который стал известен в связи с состоянием физика Стивена Хокинга, описание ведётся по реакции, выраженной в изменении формы и структуры глиальных клеток – астроцитов и микроглии. Многие из подобных заболеваний проявляются в старшем возрасте, они связаны со старением и возможно вызваны им. Понимание нейровоспаления, его причин и последствий, может потенциально улучшить терапию многих заболеваний, некоторые из которых сейчас лечатся только симптоматически.

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

Что такое воспаление?


Читать дальше →
Total votes 23: ↑22 and ↓1 +21
Comments 5

Смарт-антенна для сетей LTE

Reading time 5 min
Views 18K
Третий пин corporate blog DIY Cellular communication
В настоящее время многие пользуются интернетом LTE. Однако, если в крупных городах уже нет проблем с покрытием сети и скоростью интернета, то в пригородах абоненты сталкиваются с проблемой слабого приема. Причиной этого является не только непосредственно слабый сигнал, но и возникновение множества переотражений сигнала по пути от базовой станции (БС) к абоненту. В данной статье описывается разработка смарт-антенны, которая адаптируется к условиям приема сигнала.
Читать дальше →
Total votes 13: ↑13 and ↓0 +13
Comments 17

Юридические аспекты операций с криптовалютами для резидентов РФ

Reading time 8 min
Views 47K
Decentralized networks *Payment systems *Legislation in IT Business Models *Finance in IT

image


Являются ли криптовалюты объектом гражданских прав в РФ


Да, являются.


Список объектов гражданских прав указан в ст. 128 ГК РФ:


“К объектам гражданских прав относятся вещи, включая наличные деньги и документарные ценные бумаги, иное имущество, в том числе безналичные денежные средства, бездокументарные ценные бумаги, имущественные права; результаты работ и оказание услуг; охраняемые результаты интеллектуальной деятельности и приравненные к ним средства индивидуализации (интеллектуальная собственность); нематериальные блага”

Как видно из текста закона, этот список не исключительный, и туда входят любые имущественные права, результаты работ и оказание услуг, и даже нематериальные блага (пример: "вы мне споете, а я вам станцую" — это обмен нематериальными благами)


Часто встречаемые высказывания о том, что де "нет определения криптовалюты в законодательстве РФ и поэтому операции с ними незаконны" — неграмотны.

Читать дальше →
Total votes 46: ↑43 and ↓3 +40
Comments 167

Раковые клетки получают энергию для бурного роста при расщеплении сахара

Reading time 3 min
Views 48K
Popular science Health


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

Варбург, исследуя клетки раковых опухолей, обнаружил, что уровень гликолиза в них может быть в 200 раз выше, чем в обычных, здоровых тканях. Именно поэтому ученый решил, что причиной рака является нарушение обмена веществ в клетках. Спустя некоторое время было доказано, что это вовсе не так, рак вызывают мутации в различных генов. Но какую роль во всем этом играет сахар и причем здесь молочная кислота?
Читать дальше →
Total votes 22: ↑21 and ↓1 +20
Comments 45

Путешествие на Байкал или, Как я собрал солнечную электростанцию на берегу

Reading time 6 min
Views 17K
Energy and batteries DIY
Если данный текст о солнечной электростанции своими руками покажется интересным, то я продолжу цикл об электростанциях в разных уголках страны

Полагаю, мало кто из путешественников не мечтал побывать на Байкале. Многочисленные попытки подогнать отпуск под такое путешествие разбивались о суровую правду: дистанция пути на автомобиле в одну сторону более 5000 километров – это очень серьезное препятствие. Мало того, что надо пересечь половину страны, так еще и времени такое путешествие занимает немало. А ведь захочется и по пути все республики посмотреть, да на горы Уральские полюбоваться. В общем, не складывалось.

Разменяв третий десяток лет от роду, случилось у меня счастье – оказалось, что нужно лететь на Байкал. И пусть путешествие планировалось служебным, но все-таки это путешествие на самое большое озеро на Земле.

Начинаем!


Total votes 45: ↑34 and ↓11 +23
Comments 102

В России обложат пошлиной все интернет-покупки дороже €20

Reading time 4 min
Views 86K
Pochtoy.com corporate blog E-commerce management *Finance in IT
Правительство решило взимать с россиян пошлину при ввозе в страну любых товаров дороже €20. Об этом сообщает РБК, ссылаясь на проект федерального бюджета. Ограничения для покупок будут снижены в 50 раз: сейчас порог для беспошлинного ввоза составляет €1000. Новым законом Россию фактически хотят уровнять с Белоруссией, где порог для посылок из-за рубежа установлен на уровне €22. Зарубежные покупки – хлеб и соль мейлфорвардеров, и новое резкое закручивание гаек нас, мягко говоря, не радует. Но даже обычные покупатели, которые никогда ничего не заказывали из зарубежных интернет-магазинов, от новых сборов могут сильно пострадать.


Читать дальше →
Total votes 38: ↑31 and ↓7 +24
Comments 279

Изолируем демоны с systemd или «вам не нужен Docker для этого!»

Reading time 9 min
Views 47K
Information Security *
В последнее время я вижу, как довольно большое количество людей применяет контейнерную виртуализацию только для того, чтобы запереть потенциально небезопасное приложение внутри контейнера. Как правило, используют для этого Docker из-за его распространенности, и не знают ничего лучше. Действительно, многие демоны первоначально запускаются от имени root, а далее либо понижают свои привилегии, либо master-процесс порождает обрабатывающие процессы с пониженными привилегиями. А есть и такие, которые работают исключительно от root. Если в демоне обнаружат уязвимость, которая позволяет получить доступ с максимальными привилегиями, будет не очень приятно обнаружить злоумышленников, уже успевших скачать все данные и оставить вирусов.
Контейнеризация, предоставляемая Docker и другим подобным ПО, действительно спасает от этой проблемы, но также и привносит новые: необходимо создавать контейнер для каждого демона, заботиться о сохранности измененных файлов, обновлять базовый образ, да и сами контейнеры часто основаны на разных ОС, которые необходимо хранить на диске, хотя они вам, в общем-то, и не особо нужны. Что делать, если вам не нужны контейнеры как таковые, в Docker Hub приложение собрано не так, как нужно вам, да и версия устарела, SELinux и AppArmor кажутся вам слишком сложными, а вам бы хотелось запускать его в вашем окружении, но используя такую же изоляцию, которую использует Docker?

Capabilities

В чем отличие обычного пользователя от root? Почему root может управлять сетью, загружать модули ядра, монтировать файловые системы, убивать процессы любых пользователей, а обычный пользователь лишен таких возможностей? Все дело в capabilities — средстве для управления привилегиями. Все эти привилегии даются пользователю с UID 0 (т.е. root) по умолчанию, а у обычного пользователя нет ни одного из них. Привилегии можно как дать, так и отобрать. Так, например, привычная команда ping требует создания RAW-сокета, что невозможно сделать от имени обычного пользователя. Исторически, на ping ставили SUID-флаг, который просто запускал программу от имени суперпользователя, но сейчас все современные дистрибутивы выставляют CAP_NET_RAW capability, которая позволяет запускать ping из-под любого аккаунта.
Получить список установленных capabilities файла можно командой getcap из состава libcap.
% getcap $(which ping)
/usr/bin/ping = cap_net_raw+ep

Флаг p здесь означает permitted, т.е. у приложения есть возможность использовать заданную capability, e значит effective — приложение будет ее использовать, и есть еще флаг iinheritable, что дает возможность сохранять список capabilities при вызове функции execve().
Capabilities можно задать как на уровне ФС, так и просто у отдельного потока программы. Получить capability, которая не была доступна с момента запуска, нельзя, т.е. привилегии можно только понижать, но не повышать.
Также существуют биты безопасности (Secure Bits), их три: KEEP_CAPS позволяет сохранить capability при вызове setuid, NO_SETUID_FIXUP отключает перенастройку capability при вызове setuid, и NOROOT запрещает выдачу дополнительных привилегий при запуске suid-программ.
Читать дальше →
Total votes 72: ↑70 and ↓2 +68
Comments 34

Тестирование или парсинг сайтов с динамическим дом и многое другое. Nightmare.js — ему все равно

Reading time 4 min
Views 20K
JavaScript *
Sandbox
Эта статья не будет содержать много лирики, марали или вводных зачем и кому это может быть надо.

В двух словах:


1. Пакет можно использовать для тестирования сайтов.
2. Пакет можно использовать для парсинга данных.
3. Пакет можно использовать для автоматизации ввода данных на сайты.

Альтернативы:


Casper.js, phantom.js, watir и много кто еще, в гугле полно всех и вся. Почему я за nightmare.js:

  1. Простота использования.
  2. Полная поддержка html5, никаких конфликтов с сайтами.
  3. Расширяемый через экшены.

Структура библиотеки


Nightmare класс использует фреймворк electron, для каждой страницы создавая объект (BrowserWindow) который запускает браузер оболочку Chromium.

Принцип работы


  1. Nightmare инициализирует новое приложение electron с стартовой страницей, которую необходимо подвергнуть дальнейшей обработке.
  2. Перед загрузкой исследуемой страницы загружаются скрипты, которые позволяют поддерживать двустороннее взаимодействие программиста и страницы через серию эмиттеров.
  3. Nightmare предоставляет программисту набор апи (цепочки действий), позволяющие произвести любые манипуляции с сайтом и получить требуемые данные.
Читать дальше →
Total votes 17: ↑16 and ↓1 +15
Comments 19

Агрегация несущих в LTE или на что обратить внимание при покупке следующего смартфона

Reading time 4 min
Views 156K
Wireless technologies *Network standards *
Sandbox
Скорость мобильного интернета зависит как от оператора связи, так и от вашего устройства. Когда при описании сети оператора используются термины 4G+ или LTE-Advance, то речь идет о том, что на сети поддерживается технология агрегации несущих, она-то и обеспечивает более высокие скорости мобильного интернета. Что это такое, как это уже реализовано на сетях российских операторов мобильной связи, какие смартфоны ее поддерживают – об этом данная статья.
Читать дальше →
Total votes 39: ↑36 and ↓3 +33
Comments 39

Проблемы безопасности почты Mail.ru

Reading time 1 min
Views 40K
Information Security *
Sandbox
Два года назад мной был написан несложный PHP-скрипт для формы обратной связи. Письма приходили на почту mail.ru. Как выяснил позднее, в скрипте была ошибка. В «From» я вставлял емэйл-адрес клиента (по сути, подделывал отправителя), однако письма приходили, и ладно.

Исходный код:

$email = $_POST['email'];
$headers .= "From: " . $email . "\r\n";

А не так давно заметил, что заявки перестали приходить… Проверил форму — не работает. Вызвало недоумение, ибо никто ничего не трогал, и два года всё работало нормально. По ходу экспериментов выяснилось, что если использовать такой код:

$email = "Сбербанк <help@sberbank.ru";
$headers .= "From: " . $email . ">>\r\n";

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

image
Читать дальше →
Total votes 86: ↑57 and ↓29 +28
Comments 99

DKIM — это просто

Reading time 3 min
Views 353K
Spamming and anti-spamming
Здравствуйте.

Хочу поделиться своим небольшим опытом прикручивания DKIM (DomainKeys Identified Mail) к своему домену и почтовому серверу.

Мы имеем:
Задача:
  • Разобраться в системе подписи сообщений DKIM, что бы gmail признал её валидной и выдал заветные: dkim=pass.

Читать дальше →
Total votes 35: ↑30 and ↓5 +25
Comments 34

Больше нет писем в папке Spam: настройка SMTP-сервера

Reading time 3 min
Views 67K
Website development *
Недавно мы настраивали SMTP-сервер для нашего проекта. Вопрос стоял так: что нужно сделать, чтобы письма, отправленные нашим пользователям, не попадали в папку со спамом или попадали туда как можно реже?

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

Приведенные советы актуальны только если вы используете свой собственный SMTP-сервер. При использовании, например, SMTP сервера Google всё уже сделано за нас. Как правило. В любом случае рекомендую проверить (см. подразделы Как проверить?).
Читать дальше →
Total votes 54: ↑50 and ↓4 +46
Comments 29

Как заработать 80 000 $ на App Store

Reading time 8 min
Views 68K
Productivity Inside corporate blog Development of mobile applications *
Translation
Это проще, чем вы думаете: не нужно ни удачи, ни упорства.

На конференции WWDC Apple сообщили, что выплатили разработчикам уже 70 миллиардов долларов, причем 30% этой суммы (то есть 21 миллиард!) приходится на прошлый год. Такой резкий скачок меня удивил: не сказал бы, что я и мои друзья стали больше тратить на приложения в последнее время. Но это только мой личный опыт, поэтому я задался вопросом: откуда берется такая выручка? Я открыл App Store и стал просматривать список самых прибыльных приложений.



Шаг первый: На запах денег


Пролистывая список в категории «Производительность», я видел приложения от известных компаний, таких как Dropbox, Evernote, и Microsoft. Ничего удивительного. Стоп, а это что? Десятую позицию в списке самых прибыльных приложений для производительности (рейтинг от 7 июня 2017 года) занимало приложение под названием «Mobile protection :Clean & Security VPN».


Ужасно оформленное название (заглавные буквы вперемешку со строчными, съехавшее двоеточие, корявая грамматика) наводило на мысли, что в поисковом алгоритме случился сбой. Поэтому я отправился на Sensor Tower, чтобы посмотреть, сколько собрало приложение, и увидел… 80 000 $ за месяц?! Теперь мне стало по-настоящему интересно.
Читать дальше →
Total votes 72: ↑69 and ↓3 +66
Comments 48

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity