Pull to refresh
11
Karma
0
Rating
Vadzim Tashlikovich @sandwarrior

User

Частые ошибки в настройках Nginx, из-за которых веб-сервер становится уязвимым

Reading time 8 min
Views 54K
Cloud4Y corporate blog Information Security *System administration *IT Infrastructure *Nginx *
Translation

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

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

Мы проанализировали почти 50 000 уникальных файлов конфигурации Nginx, загруженных с GitHub с помощью Google BigQuery. С помощью собранных данных нам удалось выяснить,  какие ошибки в конфигурациях встречаются чаще всего.

Читать далее
Total votes 68: ↑67 and ↓1 +66
Comments 23

Улучшение Python-кода: 12 советов для начинающих

Reading time 12 min
Views 37K
RUVDS.com corporate blog Python *Programming *
Translation
В мои обязанности входит наём Python-разработчиков. Если у заинтересовавшего меня специалиста есть GitHub-аккаунт — я туда загляну. Все так делают. Может быть, вы этого и не знаете, но ваш домашний проект, не набравший ни одной GitHub-звезды, может помочь вам в получении работы.

То же самое относится и к тестовым задачам, выдаваемым кандидатам на должность программиста. Как известно, мы, когда впервые видим человека, формируем первое впечатление о нём за 30 секунд. Это влияет на то, как мы будем, в дальнейшем, оценивать этого человека. Мне кажется несправедливым то, что люди, обладающие привлекательной внешностью, добиваются всего легче, чем все остальные. То же самое применимо и к коду. Некто смотрит на чей-то проект и что-то тут же бросается ему в глаза. Ошмётки старого кода в репозитории — это как крошки хлеба, застрявшие в бороде после завтрака. Они могут напрочь испортить первое впечатление. Может, бороды у вас и нет, но, думаю, вам и так всё ясно.



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

В чём разница между новичком и более опытным разработчиком? Новичок не работал с устаревшими кодовыми базами. Поэтому он не видит ценности в том, чтобы вкладывать время в написание кода, который легко поддерживать. Часто новички работают в одиночку. Они, в результате, не особенно заботятся о читабельности кода.
Читать дальше →
Total votes 61: ↑53 and ↓8 +45
Comments 18

Используем Chrome DevTools профессионально

Reading time 5 min
Views 53K
OTUS corporate blog JavaScript *Google Chrome Software
Translation
И снова здравствуйте. В преддверии старта курса «JavaScript Developer. Professional» перевели

11 советов для тех, кто использует Chrome в качестве среды разработки.





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



Иногда вы открываете консоль, чтобы посмотреть вывод своей программы, или вкладку Elements, чтобы проверить CSS-стили элементов DOM.



А действительно ли вы разбираетесь в Chrome DevTools? На самом деле у инструментов разработчика множество мощных функций, которые облегчают жизнь, но о них мало кто знает.
Я расскажу о самых полезных из них.
Читать дальше →
Total votes 54: ↑51 and ↓3 +48
Comments 17

Четыре простые настройки терминала Kubernetes, которые повысят вашу продуктивность

Reading time 4 min
Views 9.4K
Домклик corporate blog DevOps *Kubernetes *
Translation

Я управлял эксплуатацией больших Kubernetes-кластеров более трёх лет, и хочу поделиться своим минималистичным подходом к настройке терминала kubectl terminal, которая доказала свою высокую эффективность в повседневной работе. Хорошо настроенный терминал с командной строкой может значительно повысить вашу продуктивность. Это как хлеб и масло — волшебное сочетание.

Но в отличие от популярных модификаций и функциональных добавлений я верю в простую конфигурацию, не требующую установки новых бинарников, обёрток или модификаций. Особенно в случае с kubectl — нативным, достаточно хорошо спроектированным инструментом, у которого совсем мало недостатков.

Вот четыре мои простых дополнения к терминалу kubectl. С этой конфигурацией я каждый день управляю 20 большими Kubernetes-кластерами на 400 машин.
Читать дальше →
Total votes 57: ↑57 and ↓0 +57
Comments 7

Как предсказать гипероним слова (и зачем). Моё участие в соревновании по пополнению таксономии

Reading time 8 min
Views 8.4K
Python *Algorithms *Hackathon Machine learning *Natural Language Processing *

Как может машина понимать смысл слов и понятий, и вообще, что значит — понимать? Понимаете ли вы, например, что такое спаржа? Если вы скажете мне, что спаржа — это (1) травянистое растение, (2) съедобный овощ, и (3) сельскохозяйственная культура, то, наверное, я останусь убеждён, что вы действительно знакомы со спаржей. Лингвисты называют такие более общие понятия гиперонимами, и они довольно полезны для ИИ. Например, зная, что я не люблю овощи, робот-официант не стал бы предлагать мне блюда из спаржи. Но чтобы использовать подобные знания, надо сначала откуда-то их добыть.


В этом году компьютерные лингвисты организовали соревнование по поиску гиперонимов для новых слов. Я тоже попробовал в нём поучаствовать. Нормально получилось собрать только довольно примитивный алгоритм, основанный на поиске ближайших соседей по эмбеддингам из word2vec. Однако этот простой алгоритм каким-то образом оказался наилучшим решением для поиска гиперонимов для глаголов. Послушать про него можно в записи моего выступления, а если вы предпочитаете читать, то добро пожаловать под кат.


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

Дайджест продуктового дизайна, апрель 2017

Reading time 14 min
Views 7.1K
VK corporate blog Web design *Interfaces *Usability *Mobile applications design *
Уже семь лет я публикую регулярные обзоры свежих статей по теме интерфейсов, новых инструментов и коллекций паттернов, интересных кейсов и исторических рассказов. Из лент нескольких сотен тематических подписок отбирается примерно 5% стоящих публикаций, которыми интересно поделиться. Предыдущие материалы: апрель 2010-март 2017.

Дайджест продуктового дизайна, апрель 2017
Total votes 29: ↑27 and ↓2 +25
Comments 3

Япония

Reading time 5 min
Views 8.5K
IT-emigration
Внесу-ка я и свой вклад в дело, тем более, что кто-то просил поделиться информацией.

Как?


Уже скоро 4 года как я живу и работаю в Японии. Попасть сюда иностранцу с одной стороны довольно легко, но с другой стороны — нет. Как так? Дело в том, что программ иммиграции в этой стране нет, натурализация возможна (практически) только через брак, но в стране огромный дефицит инженеров. То есть продавцы, юристы, врачи, строители, таксисты есть, а инженеров мало. О причинах я расскажу ниже. Так вот, Япония каждый год импортирует огромное количество индийцев, китайцев, корейцев, филиппинцев, американцев, тайцев и т.д. для работы в технических областях. Однако, русскому инженеру (как всегда) протиснуться сложно. Хотя бы потому, что нужна виза, поручитель, беготня с бумагами (в последние год-два ситуация стала самую капельку лучше). Поэтому, если очень хочется именно в Японию, придется запастись какими-то уникальными (ну, или хотя бы редкими) знаниями — микроконтроллеры, программирование для RTOS, ГИС, хитрые БД, распределенные вычисления и т.п. А веб-мастеров полно и в Китае :)
Читать дальше →
Total votes 200: ↑193 and ↓7 +186
Comments 372

Мужской мозг лучше всего работает в 39 лет

Reading time 2 min
Views 6K
Biotechnologies
Американские нейробиологи опубликовали результаты исследования процесса старения нейронов человеческого мозга. Они выяснили, в каком возрасте начинает неизбежная деградация нервных клеток, а также как именно аксоны теряют защитное покрытие из миелина. Это начинается, в среднем, в возрасте 39 лет. У кого-то раньше, у кого-то позже. Именно в этом возрасте организм постепенно теряет способность регенерировать миелин, и аксоны постепенно теряют свой функционал, причём потеря миелина ускоряется в геометрической пропорции со временем (U-образная кривая).


Читать дальше →
Total votes 42: ↑33 and ↓9 +24
Comments 44

Переключаем настройки сети в ноутбуках в два клика

Reading time 2 min
Views 5.5K
System administration *Network technologies *Laptops
Translation
Сейчас, когда Интернет уже не является чем-то странным и недосягаемым для каждого, да и ноутбуки стали доступными по цене, возникает проблема, когда дома и в офисе разные настройки Интернет подключения (ip, dns, шлюз, прокси и т.д.), которые надо каждый раз менять. Несколько недель назад ко мне обратились с просьбой как то все автоматизировать, поскольку это надо было сделать быстро то погугливши я нашел одну из шареварних программок, которая заработала. Но на этом я не остановился, искал что то попроще, потому что минусом этих программ было то, что во-первых, они платные, во-вторых они все время висят в памяти забирая у Вас «драгоценные байты», в-третьих качая с варезных сайтов варезные программы рискуете подцепить вирус, ну и последнее зачем использовать что-то постороннее, когда можно организовать все средствами операционной системы (например windows).
Читать дальше →
Total votes 66: ↑60 and ↓6 +54
Comments 58

День святого вируса

Reading time 3 min
Views 671
Information Security *
(записки антивируса-любителя)
Когда получаешь накануне дня святого валентина поздравительное письмо со ссылкой, то ужасно хочется узнать, что же там такое, по этой ссылке. Все в один голос утверждают, что такие подозрительные ссылки ни в коем случае нельзя открывать, но мы-то знаем, что если аккуратно, то можно. Например, скачать такую страницу, а потом разглядеть внимательно в любимом текстовом редакторе.

В моем случае было нечто вроде
<meta http-equiv=«refresh» content=«1;url='valentine.exe'»>

<a href="valentine.exe">blah-blah</a>

Неприкрытое приглашение стать новым пользователем вируса. Также аккуратно скачав valentine.exe, и переменовав его в .txt, чтобы ненароком не запустить, можно поковырять его изнутри.

Онлайн файл-сканнер Касперского определяет этот файл как зараженный вирусом «Email-Worm.Win32.Zhelatin.vg».

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

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

Читать дальше →
Total votes 75: ↑71 and ↓4 +67
Comments 37

«Наука и жизнь» и другие научно-популярные журналы

Reading time 1 min
Views 7.6K
Popular science
Помните, был такой журнал — «Наука и жизнь»? Наверное, кто-то думает, что он больше не выпускается, потому что родители перестали на него подписываться? Ан нет! Он существует. Недавно в метро заметил у одного иностранного студента в руках очередной выпуск. Он разглядывал его с нескрываемым интересом.
Читать дальше →
Total votes 63: ↑61 and ↓2 +59
Comments 83

Сохранить и преумножить деньги в Интернете – где и как?

Reading time 6 min
Views 2.8K
Lumber room
Инфляция неумолима, она пожирает деньги. А так хочется не только сохранить, но и приумножить. И еще раз преумножить и еще раз.
Вот уже несколько месяцев присматриваюсь, куда вложить деньги, но то вкладывать особо нечего, то доходность не устраивает, то инструментарий дает сбои. Я искал вариант вложить деньги на срок 6-9 месяцев с максимальной выгодой. Поскольку часть моего заработка в электронных деньгах, то искал я возможность вложить именно их, не вставая со стула.
Заработать в Интернете способов сотни, но это работа. А какие возможности вложить деньги? Вариантов, на самом деле не так уж и много.

ПИФы
Весной – в начале лета я планировал вкладывать именно ПИФы, но в тот момент денег не было. Посмотрев статистику за предыдущие 2-3 года, я пришел к выводу, что именно этот финансовый инструмент может принести наибольшую доходность. Самые успешные показывали до 60-80% годовых! В общей массе ПИФы давали не менее 20-40% годовых. Были конечно и исключения, которые уходили в минус, но таких меньшинство.
За покупку и продажу пая берут обычно около 1,5%, в зависимости еще от того, как долго будет ваш пай на руках. Чем дольше – тем меньше процент при продаже. Около 3% за обслуживания пая. Сразу вычтут 13% налога с дохода (Но это, конечно, если ПИФ принесет доход).

Читать дальше →
Total votes 46: ↑38 and ↓8 +30
Comments 75

Кластер «своими руками»

Reading time 2 min
Views 3.2K
Lumber room
По причине прихода нового железа в нашу маленькую и скромную компанию зародилась у меня мысль, впоследствии одобренная начальством, построить на этом железе отказоустойчивый кластер для внутренних информационных систем(ок).

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

Читать дальше →
Total votes 34: ↑28 and ↓6 +22
Comments 93

10 привычек, быстрее всего приводящие к бедности

Reading time 4 min
Views 3
Lumber room
1. Чувство сожаления по отношению к себе. Настроенные на бедность люди жалеют себя и полагают, что быть богатым им не предначертано судьбой. Кто-то жалеет себя за то, что родилась женщиной (потому что у мужчин больше возможностей), кто-то жалеет себя за полную фигуру (потому что стройные люди получают лучшие рабочие места), кто-то оплакивает свой рост, национальность, цвет кожи, религию предков, некоторые люди жалеют себя за то, что до сих пор не вышли замуж и не женились, другие плачут из-за кольца на безымянном пальце или из-за штампа о разводе, молодые видят источник проблем в неопытности, пожилые – в своем возрасте. Как вы думаете, если человек жалеет себя из-за какого-то неважного факта и целыми днями фокусируется на нем, как будут поступать окружающие его люди? Жалеть себя – это прекрасный способ обрести многотонный якорь, который остановит вас на пути личного развития и обеспечит вечную бедность. Жалеть себя – это самый лучший метод поиска низкооплачиваемой работы и обретения жалкого существования.

и ещё девять
Total votes 116: ↑106 and ↓10 +96
Comments 99

Exploits of a Mom

Reading time 1 min
Views 722
Lumber room

Если кто-то «уже видел это на Лепре», звиняйте…
Total votes 42: ↑39 and ↓3 +36
Comments 32

4 книги про Ubuntu

Reading time 2 min
Views 3K
Lumber room
Это не варез, это на самом деле 4 бесплатные книги. Их конечно же можно и купить — вы получите бумажную версию, но можно и просто почитать в онлайне (или скачать). Эти книги на английском языке.

Moving to Ubuntu | Переход на Убунту

Издатель: Addison-Wesley Professional
Язык: English
Страниц: 496 pages
Дата: August 17, 2006
Описание: Изучение Ubuntu, самого популярного Linux-дистрибутива на сегодняшний день. Эта книга для начинающих пользователей этой ОС. Для самых самых чайников в хорошем смысле этого слова. Книга научит, как выполнять те же самые задачи, что выполняются под Windows будучи в Ubuntu Linux. Интернет, офис, почта, игры. Немного о самой философии GNU.

Читать книгу можно здесь.

Читать дальше →
Total votes 8: ↑8 and ↓0 +8
Comments 8

Социальные сети и формирование групп

Reading time 9 min
Views 3.6K
Lumber room
Translation
Примечание: ниже расположен перевод академического исследования «Social Networks And Group Formation», рассматривающего некоторые аспекты выделения групп и формирования связей в социальных сетях.

«Принцип рычага» в действии



Пользователи страдают от избытка информации: по любому вопросу сейчас доступно гораздо больше сведений, чем человек способен воспринять. Как результат, люди опираются на знания других людей. Среди типичных вопросов «как?», «что?» и «почему?» ключевым является вопрос «кто?» (и, соответственно, ответ на него). Это влечет за собой необходимость знакомства и поддержания контакта с людьми, которые может помочь в каждом конкретном случае.

В контексте заявленной проблемы важным становится также понимание образования, развития и использования социальных сетей в интернете. Социальная сеть — это «группа людей (или организаций, или других социальных единиц), связи в которой являются социальными, а именно: дружбой, совместной работой или обменом информации» (Garton и др., 1997). Хотя интернет и является основным источником избыточной информации, он также позволяет пользователю эффективно управлять своими социальными сетями и таким образом получать ту информацию, которая ему необходима.

Эта область знаний находится на пересечении таких наук, как информатика, социология и математика. Ее исследователи изучают использование социальных сетей в общественных и деловых целях при помощи информационных и коммуникационных технологий (information communication technologies (ICTs)), в том числе, интернета. В этот статье рассматривается, как социальные сети, используя преимущества таких технологий — особенно, интернет-технологий, — создаются, развиваются и приносят пользу.

Социальные сети в интернете являются обширным полем для исследовательской деятельности, и любой научный обзор будет так или иначе базироваться на наборе академических публикаций. Данная статья концентрируется на последних исследованиях в области центра сети (centrality), силы силе связей, индивидуальности, доверии, активности и преимуществах. Без сомнения, статья несколько сложна для понимания, но призвана донести до разработчиков несколько полезных идей по реализации веб-приложений, активно использующих социальные сети.

Читать дальше →
Total votes 20: ↑20 and ↓0 +20
Comments 23

Каковы шансы, что вы достигнете своей цели? (Стив Павлина)

Reading time 4 min
Views 841
Lumber room
Translation
Оригинал: What Are the Odds of Becoming a Black Belt?
Автор: Стив Павлина (Steve Pavlina)
Перевод: Евгений Ефремов

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

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

Часто такие люди ищут некоторую статистику, которая помогла бы им оценить риск: Сколько человек из всех, начинавших похожую деятельность, добились в ней того, чего хочу добиться я? К примеру, если вы хотите зарабатывать $5000 в месяц как блоггер, этот вопрос будет звучать так: «Какой процент блоггеров, занимающихся этим на постоянной основе, зарабатывают $5000 в месяц и более?». Предположим, что около одного процента. И узнав это, вы оцениваете свои шансы такой же цифрой.

Какое отношение подобная статистика имеет к вашему личному шансу добиться успеха? Да вообще никакого.
Читать дальше →
Total votes 46: ↑42 and ↓4 +38
Comments 50

Правила Джоша (для деловых людей)

Reading time 3 min
Views 1.3K
Lumber room
Translation
Список советов от эксперта по базам данных и члена группы разработчиков Джоша Беркуса (Josh Berkus), на мой взгляд, может оказаться полезным не только консультантам в области баз данных. Приведённые советы относятся к сфере взаимоотношений с клиентами. Некоторые рекомендации, как мне кажется, являются актуальными и для разработчиков-фрилансеров.

Джош Беркус является членом ядра группы разработчиков PostgreSQL (PostgreSQL Core Team) с 2002-го года. В данный момент он работает на Sun Microsystems, входя в группу, занимающуюся открытыми СУБД. До работы над PostgreSQL он работал с различными другими приложениями и технологиями, включая OpenOffice.org, Microsoft SQL Server, Oracle PL/SQL, и (о, ужас!) COM+.

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

1. Состояние данных отражает состояние бизнеса. Покажите мне клиента с хроническими проблемами в базе данных — и я покажу вам клиента с хроническими проблемами в области менеджмента.
2. Три вещи, с которыми вам не придется столкнуться никогда:
  • слишком мягкие временные рамки;
  • клиент, который платит слишком быстро;
  • точная и полная спецификация.

3. Решения, принимаемые по отношению к базе данных, «живут» очень долго («нет ничего более постоянного, чем временное»): среднее время жизни «временного, одноразового» приложения баз данных составляет 4 года. Некоторые такие кусочки кода датируются 1960-ми и работают и по сей день. Так что сразу рассчитывайте на долгосрочное использование.
4. Плохие клиенты погубят ваш бизнес: умение вовремя распознать плохого клиента и отказаться от него или вовремя расторгнуть контракт — это половина успеха. Будьте готовы сбежать в любую минуту.
Читать дальше →
Total votes 44: ↑43 and ↓1 +42
Comments 40

Стив Павлина. 10 ошибок, которые совершают начинающие предприниматели

Reading time 12 min
Views 1.1K
Lumber room
Translation
Вот уже 14 лет я не работаю по найму, и за это время допустил немало глупых ошибок в ведении бизнеса. Многие пошли следом за мной и начали свой собственный бизнес, и я обратил внимание — многие из них делают те же ошибки, что и я. Поэтому эти советы в первую очередь адресованы владельцам малого бизнеса и особенно тем, кто только что начал (или собирается начать) свое дело. Итак.
Читать дальше →
Total votes 45: ↑37 and ↓8 +29
Comments 42

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity