Pull to refresh
21
0
Николай @CatHap

User

Как «выучить» английский за один год самостоятельно или статья для тех, у кого не сложилось с английским

Reading time 6 min
Views 118K
С проблемой необходимостью изучения английского сталкивался почти каждый: кто-то долго и упорно учит его в школе (иногда, кстати, успешно), кто-то ищет подходящие курсы, кто-то пользуется онлайн-ресурсами или услугами репетитора. Вопрос, почему за годы изучения английского в школе, результата добиваются немногие, и то те, чьи родители позаботились о наличии хорошего репетитора и возможности уехать в английский лагерь?

Читать дальше →
Total votes 45: ↑25 and ↓20 +5
Comments 175

В чём суть проекта Moby и почему главным репозиторием Docker вдруг стал moby/moby?

Reading time 5 min
Views 25K
Месяц назад компания Docker на конференции DockerCon 2017 официально представила свой новый Open Source-проект — Moby. Если это просто ещё один дополнительный проект, нужный кому-то, кто работает с Docker… то почему, как заметили внимательные пользователи, основной репозиторий компании в GitHub — docker/docker — стал пересылать на moby/moby?



Забегая вперёд и заранее отвечая на вопросы разработчиков, использующих Docker как простой способ запуска приложений в контейнерах: Moby — проект не для вас. Несмотря на его появление и происходящие внутри перестановки, «внешне» (для пользователей Docker как готового продукта) ничего не изменится. А для тех, кто настроен более глубоко разобраться в этих перестановках (весьма значимых!) и, возможно, даже воспользоваться ими для решения своих задач… начну с краткого экскурса в новейшую историю развития Docker.
Читать дальше →
Total votes 31: ↑31 and ↓0 +31
Comments 7

Что и зачем Docker делает в Moby для интеграции с Kubernetes?

Reading time 7 min
Views 7.6K


Вчерашний анонс официальной поддержки Kubernetes компанией Docker в своих продуктах — идеальный повод продолжить одну из наших последних публикаций, посвящённых CRI-O как альтернативному подходу к запуску контейнеров в Kubernetes. В ней уже затрагивались тема cri-containerd — своеобразного «ответа Docker» на попытки Open Source-сообщества уйти от единственного поставщика технологии для контейнеров. Чем же вызван новый поворот в жизни Docker и как его закономерность подтверждается в недавней истории проектов Moby?
Читать дальше →
Total votes 18: ↑17 and ↓1 +16
Comments 2

Информационная безопасность? Нет, не слышали

Reading time 8 min
Views 37K
Один мой друг спросил меня сегодня про гигиену цифрового поведения. Постараюсь кратко изложить принципы, следуя которым, вы повысите уровень своей безопасности в сети.

В этой статье я постарался идти от совсем банальных советов до довольно сложно реализуемых. Каждый должен решить самостоятельно, какой уровень безопасности приемлем лично для него. Тут все точно так же, как с сейфами: есть сейф за сто долларов, есть сейф за сто тысяч долларов. Глупо хранить миллионы долларов в первом, и горстку мелочи — во втором.

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

Читать дальше →
Total votes 42: ↑30 and ↓12 +18
Comments 105

Развитие баз данных в Dropbox. Путь от одной глобальной базы MySQL к тысячам серверов

Reading time 33 min
Views 18K
Когда только Dropbox запустился, один пользователь на Hacker News прокомментировал, что реализовать его можно несколькими bash-скриптами с помощью FTP и Git. Сейчас такого сказать никак нельзя, это крупное облачное файловое хранилище с миллиардами новых файлов каждый день, которые не просто как-то хранятся в базе данных, а так, что любую базу можно восстановить на любую точку в течение последних шесть дней.

Под катом расшифровка доклада Славы Бахмутова (m0sth8) на Highload++ 2017, о том, как развивались базы данных в Dropbox и как они устроены сейчас.


О спикере: Слава Бахмутов — site reliability engineer в команде Dropbox, очень любит Go и иногда появляется в подкасте golangshow.com.

Содержание




Total votes 73: ↑71 and ↓2 +69
Comments 9

Как безопасно программировать в bash

Reading time 11 min
Views 44K

Почему bash?


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

В fish сложнее допустить ошибку, но там нет безопасного режима. Поэтому хорошей идеей станет прототипирование в fish, а затем трансляция с fish на bash, если вы умеете правильно это делать.

Предисловие


Данное руководство сопровождает ShellHarden, но автор также рекомендует ShellCheck, чтобы правила ShellHarden не расходились с ShellCheck.

Bash — не тот язык, где самый правильный способ решить проблему одновременно является самым простым. Если принимать экзамен по безопасному программированию в bash, то первое правило BashPitfalls звучало бы так: всегда используй кавычки.

Главное, что нужно знать о программировании в bash


Маниакально ставить кавычки! Незакавыченная переменная должна расцениваться как взведённая бомба: она взрывается при контакте с пробелом. Да, «взрывается» в смысле разделения строки на массив. В частности, расширения переменных вроде $var и подстановки команд вроде $(cmd) подвергаются расщеплению слов, когда внутренняя строка расширяется в массив из-за расщепления в специальной переменной $IFS с пробелом по умолчанию. Это обычно незаметно, потому что чаще всего результатом становится массив из 1 элемента, неотличимый от ожидаемой строки.
Читать дальше →
Total votes 74: ↑73 and ↓1 +72
Comments 39

Неудовольствие обнуляет уровень счастья: почему невозможно постоянно быть счастливым

Reading time 10 min
Views 17K


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

Многие повседневные функции работы мозга кажутся настолько естественными, что мы с трудом можем дистанцироваться от них, чтобы посмотреть на них со стороны. Мозг занимается тем, что замечает разные вещи. Очевидно, что основная работа мозга заключается в восприятии; на базе воспринятого он может делать оценки, а на основе их – действовать. Эту работу выполняют нейроны нервной системы. Они находят и представляют входные данные внешнего (и внутреннего) мира, анализируют данные, и реагируют на этот анализ соответствующим действием. Под действием обычно понимается движение: нейроны отправляют сигналы, заставляющие мускулы сокращаться, что позволяет вам выполнять какие-то действия. Входные данные поступают с органов чувств, анализ часто называют ассоциативным, а выход – моторикой. Троица чувства/ассоциативный анализ/моторика – это нейронный аналог восприятия/оценки/действия.
Читать дальше →
Total votes 25: ↑20 and ↓5 +15
Comments 38

SSLH: Прячем SSH/HTTPS/OpenVPN/Telegram за единым портом 443

Reading time 3 min
Views 117K
image

SSH/HTTPS/OpenVPN/Telegram и всё на одном порту?! Что?!
— Да!
  • Хотите скрыть наличее у вас некоторых сервисов?
  • В публичной wi-fi сети блокируется всё кроме 443 (https) порта?
  • Настроили Telegram Proxy/OpenVPN и не хотите его «светить» ?
  • SSH подключение к своему серверу из стран с цензурой?

На все эти вопросы ответ один — Мультиплексирование SSL/TLS соединений, или SSLH.

В посте мы рассмотрим как в 1 команду спрятать кучу сервисов за 1 портом.
Читать дальше →
Total votes 83: ↑79 and ↓4 +75
Comments 100

Реверсим паяльную станцию HI-END класса

Reading time 16 min
Views 66K


У нас было несколько фотографий основной печатной платы, видео из YouTube с осциллограммами напряжений на стоках мосфетов, комментарий на форуме с перечислением ёмкостей резонансных конденсаторов, а также несколько видеозаписей распаковок со съёмками процесса разогрева жала. Особое беспокойство вызывало видео с измерением пиковой потребляемой мощности при разогреве. Нет ничего более грустного, чем сгоревший свежекупленный на амазоне картридж стоимостью четыре тысячи рублей. Но… давайте начнём всё с начала.
Читать дальше →
Total votes 116: ↑115 and ↓1 +114
Comments 89

Брендсквоттеры на марше: как у нас пытались отжать название сервиса

Reading time 5 min
Views 30K
Эта история началась чуть более года назад. Если бы я писал плохие детективы, то начал бы ее с фразы вроде “В этот прекрасный весенний день ничего не предвещало беды”. Но так как это не детектив, а реальная жизнь, я просто изложу эту историю максимально кратко и близко к сути. Если она послужит вам полезным предостережением, я буду очень рад. У нас чудом получилось проскочить между Сциллой и Харибдой, но совершенно не факт, что где-то в недрах “Роспатента” сейчас не лежит аналогичная заявка неизвестного брендсквоттера на ваш сервис или программу.

Итак, все началось в тот день, когда мы решили зарегистрировать торговую марку нашего сервиса в России. На тот момент у нас уже была зарегистрированная ТМ в США, поэтому мы не ожидали никаких проблем с регистрацией в РФ. Однако, реальность внесла свои коррективы. Через неделю после начала стандартной процедуры регистрации, мы получили письмо от патентного поверенного, которое, мягко говоря, выбило нас из колеи:
Читать дальше →
Total votes 55: ↑55 and ↓0 +55
Comments 58

Большая прогулка. Приглашаем на экскурсию по строительной площадке Лахта Центра

Reading time 4 min
Views 37K
Люди часто спрашивают – можно ли попасть на экскурсию по стройке Лахта Центра? Сегодня наступил тот приятный день, когда я, наконец, могу ответить: «Да»!

image
Фото Виктора Сухорукова

Желающих жду под катом.
Total votes 52: ↑51 and ↓1 +50
Comments 39

Самая сложная программа

Reading time 5 min
Views 118K
От переводчика: я нашел на Quora вопрос: Какую программу или код можно назвать самыми сложными из когда-либо написанных? Ответ одного из учасников был настолько хорош, что вполне тянет на статью.

Пристегни ремни.

Самая сложная программа в истории была написана командой людей, имена которых нам неизвестны.

Это программа – компьютерный червь. Червь был написан, судя по всему, между 2005 и 2010 годами. Поскольку этот червь является таким сложным, я могу дать лишь общее описание того, что он делает.
Читать дальше →
Total votes 174: ↑158 and ↓16 +142
Comments 268

Оптимизируем веб с Виталием Фридманом, — компрессия, картинки, шрифты, фичи HTTP/2 и Resource Hints

Reading time 12 min
Views 26K
Предлагаем вашему вниманию подборку всевозможных лайфхаков и трюков по оптимизации объема загружаемого кода и файлов, а также общего ускорения загрузки веб-страниц.


В основе статьи расшифровка выступления Виталия Фридмана из Smashing Magazine на декабрьской конференции Holy JS 2017 Moscow.
Total votes 49: ↑46 and ↓3 +43
Comments 4

Почему не нужно всегда получать согласие на обработку персональных данных в рамках GDPR

Reading time 8 min
Views 30K
Статья для тех, у кого клиенты в Евросоюзе. Я работаю юристом в компании ISPsystem и уже пару месяцев разбираюсь в тонкостях GDPR. В этой статье поделюсь своими мыслями о нем и расскажу, почему не надо по любому поводу спрашивать у клиента разрешение на обработку персональных данных.



Лайфхак по 152-ФЗ


Для начала небольшое, но важное отступление.

Недавно знакомый из торговой компании попросил посмотреть их договор с веб-студией. Те собирались дорабатывать сайт магазина. Первым делом я открыл техзадание и увидел, что ребята планируют зарегистрировать владельца сайта в Роскомнадзоре как оператора персональных данных. Я подумал: «Они это серьезно?» И сам же ответил: «К сожалению, да».
Читать дальше →
Total votes 51: ↑51 and ↓0 +51
Comments 50

О защите персональных данных на российском и европейских рынках

Reading time 7 min
Views 13K
С 1 июля вступили в силу последние поправки в российское законодательство о персональных данных. Они диктуют новые правила по обработке и хранению личной информации пользователей. Последние изменения встают в один ряд с чередой дополнительных требований к операторам данных. Эта статья рассказывает о новых реалиях и оптимальных решениях в области работы с личной информацией в России и Европе.

Читать дальше →
Total votes 11: ↑9 and ↓2 +7
Comments 4

GDPR на носу – прекращаем панику и начинаем спасаться

Reading time 3 min
Views 16K
Судя по нарастающей в сети панике, очень многие либо только узнали о GDPR, либо оттянули удовольствие до предела.


Уже 25 мая угроза штрафа в 20 млн Евро или 4% от мирового оборота (что из этого больше) станет реальностью – впадать в панику или не впадать? Поскольку я уже ливанул ведро бензина в огонь, чувствую себя обязаным показать дорогу к пожарному выходу, не дожидаясь анонсированного в предыдущей статье события. Зарание прошу прощения за шероховатости – экспромт, очень fast и очень dirty, зато полезность зашкаливает (надеюсь).
Читать дальше →
Total votes 10: ↑9 and ↓1 +8
Comments 35

GDPR как оружие массового поражения

Reading time 5 min
Views 48K

Под угрозой все. Вообще все


Бытует мнение, что сочинение законов, которые нарушают практически все – это изобретение нашей Родины. Но, как и со слонами, всё не так однозначно: при изучении General Data Protection Regulation (GDPR) я понял, что в этом мы безнадёжно отстали от Европы. Шутка ли – завиноватить одним махом весь мир! Думаете, вашей компании не предстоит прогибаться под GDPR? Я развею это опасное заблуждение.

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

Читать дальше →
Total votes 84: ↑77 and ↓7 +70
Comments 159

“Cтрашилка” о GDPR

Reading time 7 min
Views 36K
В мае 2018 года в Европе вступают в силу обновлённые правила обработки персональных данных, установленные Общим регламентом по защите данных (Регламент ЕС 2016/679 от 27 апреля 2016 г. или GDPR — General Data Protection Regulation).

Все компании, которые обрабатывают (как внутри, так и за пределами ЕС) персональные данные граждан европейских стран, обязаны соблюдать требования этого документа. Сфера действия новых правил GDPR распространяется на все 28 стран ЕС. Этот документ заменит существующие законы о защите персональных данных в европейских странах. С учетом того, что новые правила GDPR будут применяться экстерриториально, их соблюдение будет обязательным для российских компаний, имеющих присутствие в ЕС. То есть для любого российского бизнеса, собирающему и обрабатывающему персональные данные хотя бы одного гражданина страны-члена ЕС.
Читать дальше →
Total votes 14: ↑12 and ↓2 +10
Comments 49

GDPR — новые правила обработки персональных данных в Европе для международного IT-рынка

Reading time 9 min
Views 342K
image

В мае 2018 года Европа переключится на обновлённые правила обработки персональных данных, установленные Общим регламентом по защите данных (Регламент ЕС 2016/679 от 27 апреля 2016 г. или GDPR — General Data Protection Regulation). Данный регламент, имеющий прямое действие во всех 28 странах ЕС, заменит рамочную Директиву о защите персональных данных 95/46/ЕС от 24 октября 1995 года. Важным нюансом GDPR является экстерриториальный принцип действия новых европейских правил обработки персональных данных, поэтому российским компаниям следует внимательно отнестись к ним, если услуги ориентированы на европейский или международный рынок.


Новый регламент предоставляет резидентам ЕС инструменты для полного контроля над своими персональными данными. С мая 2018 года ужесточается ответственность за нарушение правил обработки персональных данных: по GDPR штрафы достигают 20 миллионов евро (около 1,5 млрд руб.) или 4% годового глобального дохода компании. В настоящей статье мы проанализировали новые правила обработки персональных данных в ЕС и сформулировали рекомендации для российских компаний по методам реагирования на GDPR.

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

GDPR. Практические советы

Reading time 5 min
Views 63K
Все слышали о General Data Protection Regulation (GDPR) (Regulation (EU) 2016/679), который вступает в силу 25 мая 2018 года. Штрафы большие и придётся соответствовать. Как и любой официальный документ, он написан сухо и может трактоваться по-разному. За последние полгода провел анализ десятка различных веб-систем на соответствие GDPR, и везде встречались одни и те же проблемы. В связи с этим цель этой статьи не разъяснить, что такое GDPR (об этом уже много написано), а дать практические советы техническим людям, что необходимо сделать в вашей системе, чтобы она соответствовала GDPR.

Пару интересных моментов по регламенту:

  • Если есть хоть один клиент из Европы, чьи персональные данные вы храните, вы автоматически попадаете под GDPR
  • Регламент базируется на трёх основных идеях: защита персональных данных, защита прав и свобод людей в защите их данных, ограничение перемещения персональных данных в рамках Евросоюза (Art. 1 GDPR)
  • UK всё ещё в EU, поэтому подпадает под действие GDPR, после Brexit-а GDPR будет заменён на Data Protection Bill, который по своей сути очень схож с GDPR (https://ico.org.uk/for-organisations/data-protection-bill/)
  • Серьезно ограничивается трансфер данных в третьи страны. Европейская комиссия определяет, в какие “третьи” страны или в какие сектора или организации в этих странах разрешён трансфер персональных данных Art. 45 GDPR. Вот список разрешённых стран.
Читать дальше →
Total votes 45: ↑44 and ↓1 +43
Comments 41

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity